pandas dataframe:.index的含义

时间:2016-07-25 14:07:09

标签: python pandas dataframe

我试图理解以下代码输出的含义:

import pandas as pd

index = ['index1','index2','index3']
columns = ['col1','col2','col3']
df = pd.DataFrame([[1,2,3],[1,2,3],[1,2,3]], index=index, columns=columns)
print df.index

我希望只有一个包含数据帧索引的列表:

['index1,'index2','index3']

然而输出是:

索引([u'index1',u'index2',u'index3'],dtype ='object')

1 个答案:

答案 0 :(得分:0)

这是pandas.Index对象的漂亮输出,如果你看它显示类类型的类型:

In [45]:
index = ['index1','index2','index3']
columns = ['col1','col2','col3']
df = pd.DataFrame([[1,2,3],[1,2,3],[1,2,3]], index=index, columns=columns)
df.index

Out[45]:
Index(['index1', 'index2', 'index3'], dtype='object')

In [46]:
type(df.index)

Out[46]:
pandas.indexes.base.Index

所以它显示的是你有一个Index类型的元素'index1',依此类推,dtype是objectstr

如果你没有传递索引的字符串列表,你会得到默认的int索引,即新类型RangeIndex

In [47]:
df = pd.DataFrame([[1,2,3],[1,2,3],[1,2,3]], columns=columns)
df.index

Out[47]:
RangeIndex(start=0, stop=3, step=1)

如果您想要一个值列表:

In [51]:    
list(df.index)

Out[51]:
['index1', 'index2', 'index3']