Pandas DataFrame 行列操作
2017-08-09 19:22
633 查看
以下实验中的train.csv文件使用Digit Recognizer中的训练数据集
选择DataFrame中列名以XXX开头的列:
参考引用:http://blog.csdn.net/xiaodongxiexie/article/details/53108959
import pandas as pd # 引用pandas库 import numpy as np # 引用Numpy库 dataset = pd.read_csv("../data/train.csv") #读取csv文件
dataset.head() # 查看数据前5行
# 随机构造一个5行3列的DataFrame数据,列名分别定义为‘ABC’,行索引间隔为2 df = pd.DataFrame(np.arange(15).reshape(5,3),index=list('abcde'),columns=list('ABC')) # A B C a 0 1 2 b 3 4 5 c 6 7 8 d 9 10 11 e 12 13 14
df.irow(0) #取df的第一行, FutureWarning: irow(i) is deprecated. Please use .iloc[i] A 0 B 1 C 2 Name: a, dtype: int32 df.iloc[0] #取df的第一行 A 0 B 1 C 2 Name: a, dtype: int32 df.iloc[[2]] # 按照index的序值,选择第3行 A B C c 6 7 8
df.loc[['b']] # 按照index的具体值,选择索引为'b'的那一行 A B C b 3 4 5
df['A'] # 选择表格中的'A'列,使用类字典属性,返回的是Series类型 a 0 b 3 c 6 d 9 e 12 Name: A, dtype: int32
df.A # 选择表格中的'A'列,使用点属性,返回的是Series类型 a 1.470787 b 0.253183 c -0.061858 d 0.203922 e 0.364775 Name: A, dtype: float64
df[['A']] # 选择表格中的'A'列,返回的是DataFrame类型 A a 0 b 3 c 6 d 9 e 12
df[['A','B']] # 选择表格中的'A'、'B'列 A B a 0 1 b 3 4 c 6 7 d 9 cea6 10 e 12 13
df[0:2] #返回第1行到第2行的所有行,前闭后开,包括前不包括后 A B C a 0 1 2 b 3 4 5
df[1:2] #返回第2行,从0计,返回的是单行,通过有前后值的索引形式, #如果采用data[1]则报错 A B C b 3 4 5 df.ix[1:2] #返回第2行的第三种方法,返回的是DataFrame,跟df[1:2]同 A B C b 3 4 5
df['a':'b'] #利用index值进行切片,返回的是**前闭后闭**的DataFrame, #即末端是包含的 A B C a 0 1 2 b 3 4 5
df.icol(0) # 取df的第一列 ,FutureWarning: icol(i) is deprecated. Please use .iloc[:,i] a 0 b 3 c 6 d 9 e 12 Name: A, dtype: int32 df.iloc[:,0] #取df的第一列 a 0 b 3 c 6 d 9 e 12 Name: A, dtype: int32
df.tail(3) #返回df的后3行数据,默认为后五行,需要后十行则df.tail(10) A B C c 6 7 8 d 9 10 11 e 12 13 14
df.iloc[-1] #选取DataFrame最后一行,返回的是Series A 12 B 13 C 14 Name: e, dtype: int32 df.iloc[-1:] #选取DataFrame最后一行,返回的是DataFrame A B C e 12 13 14
df.loc['a',['B','C']] #返回‘a’行'B'、'C'列,这种用于选取行索引列索引已知 B 1 C 2 Name: a, dtype: int32
df.iat[1,1] #选取第二行第二列,用于已知行、列位置的选取。 4
df.ix[:,[0,1,2]] #不知道列名只知道列的位置时 A B C a 0 1 2 b 3 4 5 c 6 7 8 d 9 10 11 e 12 13 14
选择DataFrame中列名以XXX开头的列:
import pandas as pd import numpy as np df = pd.DataFrame({'foo.aa': [1, 2.1, np.nan, 4.7, 5.6, 6.8], 'foo.fighters': [0, 1, np.nan, 0, 0, 0], 'foo.bars': [0, 0, 0, 0, 0, 1], 'bar.baz': [5, 5, 6, 5, 5.6, 6.8], 'foo.fox': [2, 4, 1, 0, 0, 5], 'nas.foo': ['NA', 0, 1, 0, 0, 0], 'foo.manchu': ['NA', 0, 0, 0, 0, 0],}) df[df.columns[pd.Series(df.columns).str.startswith('foo')]] > foo.aa foo.bars foo.fighters foo.fox foo.manchu 0 1.0 0 0 2 NA 1 2.1 0 1 4 0 2 NaN 0 NaN 1 0 3 4.7 0 0 0 0 4 5.6 0 0 0 0 5 6.8 1 0 5 0
参考引用:http://blog.csdn.net/xiaodongxiexie/article/details/53108959
相关文章推荐
- python pandas dataframe 行列选择,切片操作
- python pandas dataframe 行列选择,切片操作 原创 2017年02月15日 21:43:18 标签: python 30760 python pandas dataframe
- python pandas dataframe 行列选择,切片操作
- pandas DataFrame行列操作使用方法
- python_pandas_dataframe_行列选择_切片操作
- 【pandas】[2] DataFrame 基础,创建DataFrame和增删改查基本操作(1)
- 利用 Python 进行数据分析(八)pandas 基本操作(Series 和 DataFrame)
- pandas系列之 DataFrame 行列数据筛选
- 数据分析之Pandas(一):Series、DataFrame基本操作及索引对象
- DataFrame 行列选择,切片操作,多重索引取值
- pandas Dataframe行列读取的实例
- python pandas ---Series,DataFrame 创建方法,操作运算操作(赋值,sort,get,del,pop,insert,+,-,*,/)
- python中pandas库中DataFrame对行和列的操作使用方法
- python中pandas库中DataFrame对行和列的操作使用方法
- python pandas包操作以及dataframe
- Pandas入门(二)——DataFrame结构及常用操作
- pandas数据处理常用函数demo之创建/行列操作/查看/文件操作
- Pyhton科学计算工具Pandas(三) —— 数据结构Dataframe的基本操作
- Pandas入门(二)——DataFrame结构及常用操作
- python pandas库中DataFrame对行和列的操作实例讲解