一:索引
1.1 DataFrame索引
行索引默认是数字类型,但是不能见名知意,所以如果可以使用唯一id会更好
例如: data.index = data[‘id’]
id(index) 可以显示索引的地址
行索引和列索引都是Index类型
1.2修改索引
行索引不支持修改,是因为索引是Index类型,不可以直接修改索引的内容
例如:index[1] = ‘001’
这样会报错!
1.3不可变对象 字符串
字符串,a=‘abc’ / a=‘abcd’
修改字符串只是修改了字符串的引用
1.4可变对象 list / dict / map
list1 = [1,2,3,4]
list1.append(5)
二:多重索引
2.1多层索引设置
- data.set_index([‘id’,‘name’] , drop=FALSE) , drop可以选择保留还是删除索引列
- MultiIndex.from_product([‘id’,‘name’])
2.2多层索引的使用
取值
data.loc[‘id’,:] , 这里使用的是中括号[],因为data.loc 代表一种数据类型,而不是方法/函数
data.loc[(‘id’,‘name’),:]
2.3替换索引名称
data.index.names = [‘main’,‘sub’] , 可以修改索引名称
2.4多重索引的交换
data.swaplevel(‘main’,‘sub’) , 把一级和二级索引进行交换位置
三:聚合函数
3.1层级索引的简单聚合
data[‘列名’].sum(level = ‘索引名称’)
根据索引维度进行聚合求sum()