Pandas 学习记录(一)
1.DataFrame 按照列和按照行进行索引数据
按照列索引 df[’column_name’]
按照行索引 df.loc[’row_key’] 或 df.iloc[index]
2.先行后列索引单元格数据/先列后行索引单元格数据
df.loc[’row_key’][’column_name’] #先行后列
df[’column_name’][’row_key’] #先列后行
3.df 删除和新增列/行
df.drop[’ch’]
#drop 掉了一个行,但是要加 inplace=true 是在原始数据上进行修改
#drop 默认是drop 行,我去,好恶心,索引默认是列,drop 默认是行
df.drop([’area’],axis=1)
#加了axis=1 是删除的列了
4.从dataframe 取出的数据是对原始数据有影响
rank = df[’happiness_value’]
rank+=2
print(df) # df 中的值也会跟着改变
rank = df[’happiness_value’].copy()
5.从csv中读取数据
pd.read_csv(’’,index_col=’’,usecols=[’country’,’region’,’happiness_value’])
6.dataframe 的index 是不可以直接修改的
df.index[0]=’丹麦’ #错误
7.reset_index 注意 inplace 在原始数据上进行修改
report_2016.reset_index(inplace=true).head()
#会报错,因为reset_index 返回值是没有返回值的,只是在数据上进行了操作
8.列名重命名 rename
df.rename(columns={’country’:’国家’,’region’:’地区’},inplace=true)
9.布尔值遮照过滤
df[df[’country’]==’west’].reset_index(inplace=true)
10.Pandas 多层索引 set_index
df.set_index([’region’,’country’])
11.两层索引取数据 注意和 [[’country_1’,’country_2’]] 的区别
df.loc[’region’,’country’] # 两层索引取数据
通过row_key 取2行数据
s=df.loc[['Canada','Malawi']]
能够索引到2行数据
通过查看数据类型print(type(s)) 可以看到返回的依然是一个dataframe