#切片import pandas as pd
import numpy as np
data = pd.DataFrame({'id':[1,3,2],'name':['a','b','c']},index=[0,1,2])print('data:\n',data)#查看指定列print('id列:\n',pd.DataFrame(data['id']))print('id、name两列:\n',data.loc[:,['id','name']])print('第2列:\n',pd.DataFrame(data.iloc[:,1]))#查看指定行列print('name列的前两行:\n',pd.DataFrame(data,index=[0,1],columns=['name']))print('name、id两列的前三行:\n',data.loc[0:2,['name','id']])#loc是前闭后闭print('1行2列:\n',data.iloc[0,1])print('前两行前两列:\n',data.iloc[0:2,0:2])#iloc是前闭后开print('1、2列的1、3行:\n',data.iloc[[0,2],[0,1]])#查看指定行print('2、3行:\n',pd.DataFrame(data,index=[1,2]))print('前两行:\n',data.loc[0:1])print('1、3行:\n',data.iloc[[0,2]])print('空值:\n',data.isnull())
runfile('C:/Users/xyy/.spyder-py3/temp.py', wdir='C:/Users/xyy/.spyder-py3')
data:
id name
01 a
13 b
22 c
id列:
id011322id、name两列:
id name
01 a
13 b
22 c
第2列:
name
0 a
1 b
2 c
name列的前两行:
name
0 a
1 b
name、id两列的前三行:
name id0 a 11 b 32 c 21行2列:
a
前两行前两列:
id name
01 a
13 b
1、2列的1、3行:
id name
01 a
22 c
2、3行:
id name
13 b
22 c
前两行:
id name
01 a
13 b
1、3行:
id name
01 a
22 c
空值:
id name
0FalseFalse1FalseFalse2FalseFalse
#按字段条件取值import pandas as pd
data = pd.DataFrame({'id':[1,3,2],'name':['abc','bcd','cde']},index=[0,1,2])print('data:\n',data)print(pd.DataFrame(data['name'].str[0:2]))#name字段每个值的前两个字符print(data.loc[data['name'].isin(['abc','bcd'])])#name字段中为abc或bcd
runfile('C:/Users/xyy/.spyder-py3/temp.py', wdir='C:/Users/xyy/.spyder-py3')
data:
id name
01 abc
13 bcd
22 cde
name
0 ab
1 bc
2 cd
id name
01 abc
13 bcd
实例:重置索引
#按照某个字段排序后,自动生成的索引乱序,此时可以重置升序索引import pandas as pd
data = pd.DataFrame({'id':[1,3,2],'name':['a','b','c']},index=[0,1,2])print('data:\n',data)
data=data.sort_values('id')print(data)
data=data.reset_index(drop=True)#删除原索引,按顺序建立新索引print(data)
runfile('C:/Users/xyy/.spyder-py3/temp.py', wdir='C:/Users/xyy/.spyder-py3')
data:
id name
01 a
13 b
22 c
id name
01 a
22 c
13 b
id name
01 a
12 c
23 b
#将某个字段设置成索引,并升序,获取指定行import pandas as pd
data = pd.DataFrame({'id':[1,3,2],'name':['a','b','c']},index=[0,1,2])print('data:\n',data)
data=data.set_index('id',drop=True)#将id列设置为索引,且删除原表中的id列数据print(data)
data=data.sort_values('id')print(data)print(data.loc[:3])#查看id小于等于3的记录
runfile('C:/Users/xyy/.spyder-py3/temp.py', wdir='C:/Users/xyy/.spyder-py3')
data:
id name
01 a
13 b
22 c
name
id1 a
3 b
2 c
name
id1 a
2 c
3 b
name
id1 a
2 c
3 b
实例:数据查看#切片import pandas as pdimport numpy as npdata = pd.DataFrame({'id':[1,3,2],'name':['a','b','c']},index=[0,1,2])print('data:\n',data)#查看指定列print('id列:\n',pd.DataFrame(data['id']))print('id、name两列:\n',data.loc[:,['id','name']])print('第2列:\n',.