整体来说常用的方法包括一下几种:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.arange(20).reshape(4,5), columns = list('FRANK'), index = list('WANG'))
print(df)
print(df['F']) #方法1
print(df.loc['W']) #方法2
print(df.iloc[0]) #方法3
print(df.loc[:,[0,2]]) #方法4
print(df.iloc[:,['R','K']]) #方法5
print(df.ix[:,['R','K']]) #方法6
F R A N K
W 0 1 2 3 4
A 5 6 7 8 9
N 10 11 12 13 14
G 15 16 17 18 19
df如上面表格所示,简要介绍一下各种方法~
1. df['F'] 选择一列,选择多个列df[['F', 'R']],简单明了,只支持利用列名称columns进行索引;
2. df.loc['W'] 单一行索引,同样的,利用行的indexing进行索引;
3. df.iloc[0] 单一行索引,利用行的positioning进行索引;
4. df.loc[①, ②] 行、列同时索引,功能很强大,基本能够满足常用需求,划个重点:其中①代表行的indexing,二代表列的indexing,具体可以是单个值,list,切片(注意,此时的切片包含尾部元素),布尔数组等;
5.对于df.iloc也有如此方法,只不过从indexing变成了positioning,值得注意的是,此时切片操作不包含尾部元素;
6. df.ix 用法相当于loc与iloc的整合,但在新版pandas中不推荐使用;
此外,还有at,iat等方法取得表中的单独某个值,较不常用。