数据分析04_Pandas层次化索引
1.多层行索引隐式构造常见的方法是给DataFrame构造函数的index参数传递两个或更多的数组s = Series(data = [1,2,3,“a”], index = [[“a”,“a”,“b”,“b”],[“期中”,“期末”,“期中”,“期末”]])显示构造pd.MultiIndexa.使用数组b.使用tuplec.使用product(最简单推荐使用)2.多层列索引...
在许多应用中,数据可能分散在许多文件或数据库中,存储的形式也不利于分析,应采用聚合、合并、重塑数据的方法进行处理。层次化索引(hierarchical indexing)是pandas的一项重要功能,它使你能在一个轴上拥有多个(两个以上)索引级别。
1.多层行索引
- 隐式构造
常见的方法是给DataFrame构造函数的index参数传递两个或更多的数组
s = Series(data = [1,2,3,“a”], index = [[“a”,“a”,“b”,“b”],[“期中”,“期末”,“期中”,“期末”]]) - 显示构造pd.MultiIndex
a.使用数组
b.使用tuple
c.使用product(最简单推荐使用)
2.多层列索引
3. 多层索引对象的索引与切片操作
1)Series的操作:对于Series来说,直接中括号[]与使用.loc()完全一样,因此,推荐使用中括号索引和切片。
a.索引
b.切片
2)DataFrame的操作
行:使用行索引需要用ix(),loc()等函数,推荐使用loc()函数
列:可以直接使用列名称来进行列索引
注意:在对行索引的时候,若一级行索引还有多个,对二级行索引会遇到问题!也就是说,无法直接对二级索引进行索引,必须让二级索引变成一级索引后才能对其进行索引!
4.索引的堆(stack)
stack(level = 1):把列索引变成行索引
unstack(level=0):把里面的行索引变成列索引
小技巧:
使用stack()的时候,level等于哪一个,哪一个就消失,出现在行里;
使用unstack()的时候,level等于哪一个,哪一个就消失,出现在列里
5.聚合操作
注意:
(1)需要指定axis
(2)和unstack()相反,聚合的时候,axis等于哪一个,哪一个就保留
data.std()标准差
更多推荐
所有评论(0)