[英]How does one expand/unfold a Pandas Dataframe?
我有以下pandas数据帧:
Counts
Unique_ID Subcategory
a1 A 10440
B 312
C 119
a2 A 899
B 27
C 26
...
每个Unique_ID
有三个子类别A
, B
, C
,每个子类别都有一个计数。 有一种方法可以“展开”这个数据框,以便子类别是列,并且计数是有效的。 这就是我想要的:
Unique_ID Subcategory_A Subcategory_B Subcategory_C
a1 10440 312 119
a2 899 27 26
怎么做到这一点?
使用unstack
,然后再删除的顶层MultiIndex
由droplevel
和最后add_prefix
:
df1 = df.unstack()
df1.columns = df1.columns.droplevel(0)
df1 = df1.add_prefix('Subcategory_')
print (df1)
Subcategory Subcategory_A Subcategory_B Subcategory_C
Unique_ID
a1 10440 312 119
a2 899 27 26
如果需要重置索引并删除列名:
df1 = df.unstack()
df1.columns = df1.columns.droplevel(0)
df1 = df1.add_prefix('Subcategory_')
.reset_index()
.rename_axis(None, axis=1)
print (df1)
Unique_ID Subcategory_A Subcategory_B Subcategory_C
0 a1 10440 312 119
1 a2 899 27 26
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.