3 回答

TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超5個(gè)贊
values
In [1]: df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]}, index=['a', 'b', 'c']); df A B a 1 4b 2 5c 3 6In [2]: df.index.valuesOut[2]: array(['a', 'b', 'c'], dtype=object)
In [3]: df['A'].valuesOut[3]: Out[16]: array([1, 2, 3])
tolist
:
In [4]: df.index.tolist()Out[4]: ['a', 'b']

TA貢獻(xiàn)1895條經(jīng)驗(yàn) 獲得超3個(gè)贊
df.index
df.index.tolist()
df['col'].tolist()

TA貢獻(xiàn)1982條經(jīng)驗(yàn) 獲得超2個(gè)贊
不建議使用 .values
贊成這些方法!
Index
, Series
DataFrame
to_numpy()
.array
我們沒(méi)有刪除或反對(duì) Series.values
或 DataFrame.values
,但是 我們強(qiáng)烈推薦和使用 .array
或 .to_numpy()
相反。
df.index.to_numpy()# array(['a', 'b'], dtype=object)df['A'].to_numpy()# array([1, 4])
v = df.index.to_numpy()v[0] = -1df A B-1 1 2b 4 5
to_numpy(copy=True
);
v = df.index.to_numpy(copy=True)v[-1] = -123df A B a 1 2b 4 5
.array
array
ExtensionArray
pd.__version__# '0.24.0rc1'# Setup.df = pd.DataFrame([[1, 2], [4, 5]], columns=['A', 'B'], index=['a', 'b'])df A B a 1 2b 4 5
df.index.array # <PandasArray># ['a', 'b']# Length: 2, dtype: objectdf['A'].array# <PandasArray># [1, 4]# Length: 2, dtype: int64
list
:
list(df.index.array)# ['a', 'b']list(df['A'].array)# [1, 4]
.tolist()
:
df.index.tolist()# ['a', 'b']df['A'].tolist()# [1, 4]
為 Series
和 Index
由普通NumPy數(shù)組支持的ES, Series.array
將返回一個(gè)新的 arrays.PandasArray
,它是一個(gè)薄的(無(wú)副本)包裝器。 numpy.ndarray
.arrays.PandasArray
它本身并不特別有用,但它確實(shí)提供了與在熊貓或第三方庫(kù)中定義的任何擴(kuò)展數(shù)組相同的接口。
.array
現(xiàn)有 ExtensionArray
支持索引/系列,或 如果有一個(gè)NumPy數(shù)組支持該系列,則將生成一個(gè)新的 ExtensionArray
對(duì)象是作為底層數(shù)組上的一個(gè)薄包裝器創(chuàng)建的。
添加兩種新方法的理由
[.]帶著 .values
還不清楚返回的值是實(shí)際數(shù)組,還是它的某些轉(zhuǎn)換,還是熊貓自定義數(shù)組之一(如 Categorical
)。例如,用 PeriodIndex
,.values
生成一個(gè)新的 ndarray
每次的句點(diǎn)對(duì)象。[.]
.values
添加回答
舉報(bào)