繁体   English   中英

使用选定的列堆叠熊猫数据框

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM