gpt4 book ai didi

python - 在 R 与 Python 中 reshape 数据

转载 作者:太空宇宙 更新时间:2023-11-04 10:38:51 25 4
gpt4 key购买 nike

我正尝试在 R 中为 k-means 重构数据框。目前数据的结构如下:

 Subject Posture   s1 s2 s3....sn
1 45 45 43 42 ...
2 90 35 45 42 ..
3 0 3 56 98
4 45 ....

等等。我想将所有 sn 变量折叠到一个列中,并创建一个带有 s 编号的附加变量:

 Subject Posture sn dv 
1 45 1 45
2 90 2 35
3 0 3 31
4 45 4 45

这在 R 中是否可行,还是我最好直接在 python 中 reshape csv?非常感谢任何帮助。

最佳答案

这是 base R 中的典型方法(尽管使用“reshape2”可能是更典型的做法)。

假设我们从“mydf”开始,定义为:

mydf <- data.frame(Subject = 1:3, Posture = c(45, 90, 0),  
s1 = c(45, 35, 3), s2 = c(43, 45, 56), s3 = c(42, 42, 98))

你可以 reshape :

reshape(mydf, direction = "long", idvar=c("Subject", "Posture"), 
varying = 3:ncol(mydf), sep = "", timevar="sn")
# Subject Posture sn s
# 1.45.1 1 45 1 45
# 2.90.1 2 90 1 35
# 3.0.1 3 0 1 3
# 1.45.2 1 45 2 43
# 2.90.2 2 90 2 45
# 3.0.2 3 0 2 56
# 1.45.3 1 45 3 42
# 2.90.3 2 90 3 42
# 3.0.3 3 0 3 98

关于python - 在 R 与 Python 中 reshape 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22002630/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com