python_透视表操作unstack(透视表的操作)

网友投稿 280 2022-08-24


python_透视表操作unstack(透视表的操作)

python_透视表操作

Data Wrangling: Join, Combine,¶# 第8章 数据规整:聚合、合并和重塑# 在许多应⽤中,数据可能分散在许多⽂件或数据库中,存储的形# 式也不利于分析。本章关注可以聚合、合并、重塑数据的⽅法。import numpy as npimport pandas as pdpd.options.display.max_rows = 20np.random.seed(12345)import matplotlib.pyplot as pltplt.rc('figure', figsize=(10, 6))np.set_printoptions(precision=4, suppress=True)Hierarchical Indexing8.1 层次化索引# 层次化索引(hierarchical indexing)是pandas的⼀项重要功# 能,它使你能在⼀个轴上拥有多个(两个以上)索引级别。抽象# 点说,它使你能以低维度形式处理⾼维度数据。# 8.1 层次化索引# 层次化索引(hierarchical indexing)是pandas的⼀项重要功# 能,它使你能在⼀个轴上拥有多个(两个以上)索引级别。抽象# 点说,它使你能以低维度形式处理⾼维度数据。data = pd.Series(np.random.randn(9), index=[['a', 'a', 'a', 'b', 'b', 'c', 'c', 'd', 'd'], [1, 2, 3, 1, 3, 1, 2, 2, 3]])dataa 1 -0.204708 2 0.478943 3 -0.519439b 1 -0.555730 3 1.965781c 1 1.393406 2 0.092908d 2 0.281746 3 0.769023dtype: float64data.indexMultiIndex(levels=[['a', 'b', 'c', 'd'], [1, 2, 3]], labels=[[0, 0, 0, 1, 1, 2, 2, 3, 3], [0, 1, 2, 0, 2, 0, 1, 1, 2]])data['b']data['b':'c']data.loc[['b', 'd']]data.loc[:, 2]# 层次化索引在数据重塑和基于分组的操作(如透视表⽣成)中扮# 演着重要的⻆⾊。例如,可以通过unstack⽅法将这段数据重新# 安排到⼀个DataFrame中:data.unstack()1 2 3a -0.204708 0.478943 -0.519439b -0.555730 NaN 1.965781c 1.393406 0.092908 NaNd NaN 0.281746 0.769023##unstack的逆运算是stack:data.unstack().stack()a 1 -0.204708 2 0.478943 3 -0.519439b 1 -0.555730 3 1.965781c 1 1.393406 2 0.092908d 2 0.281746 3 0.769023dtype: float64frame = pd.DataFrame(np.arange(12).reshape((4, 3)), index=[['a', 'a', 'b', 'b'], [1, 2, 1, 2]], columns=[['Ohio', 'Ohio', 'Colorado'], ['Green', 'Red', 'Green']])frameframe.index.names = ['key1', 'key2']frame.columns.names = ['state', 'color']frameframe['Ohio']MultiIndex.from_arrays([['Ohio', 'Ohio', 'Colorado'], ['Green', 'Red', 'Green']], names=['state', 'color'])


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:解决Springboot中Feignclient调用时版本问题
下一篇:python_时间序列(Python时间序列图)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~