1、loc
(轴标签)、iloc
(整数标签)
import pandas as pd
-------------------------------------------------
df=pd.DataFrame(np.arange(9).reshape(3,3),index=['jasmine','qiqi','jasmine_qiqi'],columns=['name','age','sex'])
"""
name age sex
jasmine 0 1 2
qiqi 3 4 5
jasmine_qiqi 6 7 8
"""
-------------------------------------------------
df.loc['jasmine']
df.iloc[0]
"""
name 0
age 1
sex 2
Name: jasmine, dtype: int64
"""
------------------------------------------------
df.loc['jasmine':'jasmine_qiqi']
df.iloc[:3]
"""
name age sex
jasmine 0 1 2
qiqi 3 4 5
jasmine_qiqi 6 7 8
"""
-------------------------------------------------
df.loc[:,'name']
df.iloc[:,:1]
"""
jasmine 0
qiqi 3
jasmine_qiqi 6
Name: name, dtype: int64
"""
-------------------------------------------------
df.loc[:,:'sex']
df.iloc[:,:3]
"""
name age sex
jasmine 0 1 2
qiqi 3 4 5
jasmine_qiqi 6 7 8
"""
-------------------------------------------------
df.loc['jasmine':'qiqi','name':'sex']
df.iloc[:2,:3]
"""
name age sex
jasmine 0 1 2
qiqi 3 4 5
"""
2、at、iat
函数、reindex
方法
df.at['qiqi','age']
df.iat[1,1]
"""
4
"""
-------------------------------------------------
df.reindex(['jasmine','QiQi','jasmine_qiqi'],fill_value=np.NaN)
"""
name age sex
jasmine 0.0 1.0 2.0
QiQi NaN NaN NaN
jasmine_qiqi 6.0 7.0 8.0
"""
-------------------------------------------------
df.reindex(['name', 'age', 'sex','telephone'],axis='columns',fill_value='123456')
"""
name age sex telephone
jasmine 0 1 2 123456
qiqi 3 4 5 123456
jasmine_qiqi 6 7 8 123456
"""
-------------------------------------------------
3、总结
loc
轴标签用字符,df.loc['index','columns']
iloc
整数标签用数字,df.iloc[:1,:3]