[英]Stack pandas data frame using selected columns
我有一个这样的Pandas数据框:
user 1 2 3 4 ... N
u1 0.2 0.11 0.1 0.4 0.5
u2 0.1 0.3 0.15 0.2 ... 0.2
。 。 。
我想将其堆叠为以下形式:
user site value
u1 1 0.2
u1 2 0.11
u1 3 0.1
。 。 。
u2 1 0.1
Stack命令不能以其正常方式执行此操作。 关于这个问题有什么想法吗?
pandas.melt()
执行此操作:
df
Out[3]:
user 1 2 3 4
0 u1 0.2 0.11 0.10 0.4
1 u2 0.1 0.30 0.15 0.2
pd.melt(df, id_vars='user', var_name='site', value_name='value')
Out[4]:
user site value
0 u1 1 0.20
1 u2 1 0.10
2 u1 2 0.11
3 u2 2 0.30
4 u1 3 0.10
5 u2 3 0.15
6 u1 4 0.40
7 u2 4 0.20
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.