Python pandas库 数据切片 行列操作

来源:互联网 发布:淘宝如何找上家 编辑:程序博客网 时间:2024/06/12 21:21

导入txt到DataFrame

import pandas as pddata=pd.read_table('DATA\mine\c.TXT')

基本信息获取

#获取shape(row_number,colum_number)=data.shape    #shape属性,返回一个tuple:data.shape[0]                           #返回行数row_number=len(data)                    #返回行数data.shape[1]                           #返回列数#返回数值data.values                             #ndarray类型#获取索引信息data.index                             #获得行索引信息data.columns                           #获得列索引信息

行列切片

#用列名获得列data['MPa G'][100:110]            #获得MPa G,第101到110个数据data['MPa G']                     #获得MPa G列,Series类型data[['MPa G']]                   #获得MPa G列,DataFrame类型data[['w','z']]                   #返回'w'、'z'列,DataFrame类型#获取行data[2:10]                       #返回index=2-9行

loc、iloc、ix区别

loc——通过行、列标签进行索引

data.loc['d']            #返回标签为'd'的行data.loc[:,'A']          #返回标签为'A'的列data.loc['d',['A','B']]  #返回d行,'A’、'B'列

iloc——通过行、列号进行索引

data.iloc[2]        #返回第3行data.iloc[:,0]      #返回第1列data.icol[2:5,2:5]  #返回index=2、3、4行,第2-4列

ix——通过 标签/序号 进行索引

※该方法将在future被抛弃

#data.ix[]data.ix[:,3]         #返回第4列,Series类型data.ix[2,:]         #返回第3行,index=2,Series类型data.ix[:10,[0,2]]   #返回第1列,第3列前10个数据data.ix[3:10,0:4]    #返回index:3-10行(即数据的4-11行),第1-3列数据data.ix[[3,10],0:4]  #返回index:3、10行(即第4、11行),第1-3列数据data.ix[a:b,c:d]     #包含index=b行(第b+1行),不包含第d列data.icol[a:b,c:d]   #不包含index=b行(第b+1行),不包含第d列

整数索引

索引中有整数时,索引即面向“标签”的。
索引中无整数时,索引是面向“顺序”的。
参考 整数索引

参考资料:
1、python中pandas库中DataFrame对行和列的操作使用方法
2、loc、iloc、ix的区别