如何解决如何更改熊猫中数据的形状
我在 Pandas DataFrame 中有一些数据。我提供了以下数据示例:
V1 V2 V3 V4 V5 V6 V7 V8
ID
B7393 7.418801 0.805774 0.837428 0.866967 0.773911 0.825854 0.858694 0.763436
C7096 7.418801 0.857844 0.859367 0.861062 0.804877 0.829015 0.852472 0.763436
我想要做的是改变数据在下面的示例中的呈现方式。我该怎么做?我是 Python 新手,还在学习中。
ID
B7393
V1 7.418801
V2 0.805774
V3 0.837428
V4 0.866967
V5 0.773911
V6 0.825854
V7 0.858694
V8 0.763436
C7096
V1 7.418801
V2 0.857844
V3 0.859367
V4 0.861062
V5 0.804877
V6 0.829015
V7 0.852472
V8 0.763436
解决方法
您可以在此处直接使用 pandas.DataFrame.stack
:
>>> df.stack()
ID
B7393 V1 7.418801
V2 0.805774
V3 0.837428
V4 0.866967
V5 0.773911
V6 0.825854
V7 0.858694
V8 0.763436
C7096 V1 7.418801
V2 0.857844
V3 0.859367
V4 0.861062
V5 0.804877
V6 0.829015
V7 0.852472
V8 0.763436
dtype: float64
,
为什么不使用 Pandas 的 wide_to_long()
?
pd.wide_to_long(df.reset_index(),stubnames=['V'],i=['index'],j='V_thing')
还是melt()
?
pd.melt(
df.reset_index(),id_vars =['index'],value_vars =['V'+str(i) for i in list(range(1,9))]
).set_index('index')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。