Python pandas库 数据切片 行列操作

导入txt到DataFrame

import pandas as pd
data=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的区别

你可能感兴趣的:(Notes,python,pandas)