使用多个变量作为measure.vars将数据重塑为长格式

博格丹奇

标题可能有点含糊,让我解释一下我要做什么
这是我的数据框:

Person<-c("Andrew","John","Mike")
Age<-c(25,34,21)
ColA_1<-c(1,5,7)
ColA_2<-c(5,0,9)
ColA_3<-c(4,4,1)
ColB_1<-c(16,55,37)
ColB_2<-c(25,14,39)
ColB_3<-c(43,64,31)

df<-data.frame(Person=Person,Age=Age,
    ColA_1=ColA_1,
    ColA_2=ColA_2,
    ColA_3=ColA_3,
    ColB_1=ColB_1,
    ColB_2=ColB_2,
    ColB_3=ColB_3)

我想实现的是一个长格式的新数据帧,在A列下方有B列(ColB_1,ColB_2,ColB_3),同时复制Person和Age的值。在SPSS中,这相当于VARSTOCASES。输出数据帧将有6列:两列用于“个人”和“年龄”,三列用于折叠的A和B列,一列指示该行是否引用A或B数据。

我已经混入了{reshape2}包中的melt函数,但似乎只能将数据汇总到单个列中,而不是三个列中。我唯一的解决方案是创建两个数据帧,首先使用A列,其次使用B和rbind()在一起。但是,我需要针对非常复杂的数据集实现此目标,并且希望有一个更简单,更优雅的解决方案。

预期结果是:

  Person Age Index Col_1 Col_2 Col_3
1 Andrew  25     A     1     5     4
2   John  34     A     5     0     4
3   Mike  21     A     7     9     1
4 Andrew  25     B    16    25    43
5   John  34     B    55    14    64
6   Mike  21     B    37    39    31
用户名

reshape 这里的功能很好。

reshape(df, varying=list(c(3,6), c(4,7), c(5,8)), 
            times=c("A","B"), v.names=paste0("Col_",1:3), direction="long")

数据

df <- 
structure(list(Person = structure(1:3, .Label = c("Andrew", "John", 
"Mike"), class = "factor"), Age = c(25, 34, 21), ColA_1 = c(1, 
5, 7), ColA_2 = c(5, 0, 9), ColA_3 = c(4, 4, 1), ColB_1 = c(16, 
55, 37), ColB_2 = c(25, 14, 39), ColB_3 = c(43, 64, 31)), .Names = c("Person", 
"Age", "ColA_1", "ColA_2", "ColA_3", "ColB_1", "ColB_2", "ColB_3"
), row.names = c(NA, -3L), class = "data.frame")

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

重塑长数据,使新列名称包含原始变量的名称

来自分类Dev

将pandas DataFrame重塑为堆叠/记录/数据库/长格式

来自分类Dev

使用两个变量将数据更改为长格式

来自分类Dev

使用多组测量列将数据框重塑为长格式

来自分类Dev

使用R将列中的分类数据重塑为行中的二进制数据

来自分类Dev

R:将计数矩阵重塑为具有多个条目的长格式

来自分类Dev

将长数据框重塑为多列宽

来自分类Dev

R:将数据重塑为更长的格式,其中多个列共享名称中的模式

来自分类Dev

使用data.table将列从长格式折叠为宽格式

来自分类Dev

当ID变量在列标题中编码时,将数据从宽格式转换为长格式

来自分类Dev

jq:如何使用多个选择作为值重塑为对象?

来自分类Dev

使用pivot_longer将水平变形为长格式

来自分类Dev

将长格式面板数据重塑为广泛的堆叠时间序列

来自分类Dev

使用R(dplyr)中的多个变量将宽数据重塑为长数据

来自分类Dev

如何使用多列将宽数据集重塑为长数据集?

来自分类Dev

如何使用正则表达式将Data.frame重塑为具有多个值cols的长格式

来自分类Dev

使用pivot_longer将长格式数据集转换为长格式数据集

来自分类Dev

将宽数据帧重塑为长格式

来自分类Dev

根据模式而非唯一标识符将数据重塑为长格式

来自分类Dev

使用ivot_longer将列分隔为长格式

来自分类Dev

使用两个变量将数据更改为长格式

来自分类Dev

将数据框变量重塑为列表

来自分类Dev

R:使用reshape2将数据帧重塑为长数据格式

来自分类Dev

将数据重塑为宽格式

来自分类Dev

将数据从长格式重塑为宽格式 - 不止一个变量

来自分类Dev

使用 data.table 将宽数据重塑为多行长数据

来自分类Dev

将列名中具有多个键的数据框从宽到长重塑

来自分类Dev

将数据框从分类变量重塑为仅二进制变量

来自分类Dev

如何将使用数据重塑为分钟格式?

Related 相关文章

  1. 1

    重塑长数据,使新列名称包含原始变量的名称

  2. 2

    将pandas DataFrame重塑为堆叠/记录/数据库/长格式

  3. 3

    使用两个变量将数据更改为长格式

  4. 4

    使用多组测量列将数据框重塑为长格式

  5. 5

    使用R将列中的分类数据重塑为行中的二进制数据

  6. 6

    R:将计数矩阵重塑为具有多个条目的长格式

  7. 7

    将长数据框重塑为多列宽

  8. 8

    R:将数据重塑为更长的格式,其中多个列共享名称中的模式

  9. 9

    使用data.table将列从长格式折叠为宽格式

  10. 10

    当ID变量在列标题中编码时,将数据从宽格式转换为长格式

  11. 11

    jq:如何使用多个选择作为值重塑为对象?

  12. 12

    使用pivot_longer将水平变形为长格式

  13. 13

    将长格式面板数据重塑为广泛的堆叠时间序列

  14. 14

    使用R(dplyr)中的多个变量将宽数据重塑为长数据

  15. 15

    如何使用多列将宽数据集重塑为长数据集?

  16. 16

    如何使用正则表达式将Data.frame重塑为具有多个值cols的长格式

  17. 17

    使用pivot_longer将长格式数据集转换为长格式数据集

  18. 18

    将宽数据帧重塑为长格式

  19. 19

    根据模式而非唯一标识符将数据重塑为长格式

  20. 20

    使用ivot_longer将列分隔为长格式

  21. 21

    使用两个变量将数据更改为长格式

  22. 22

    将数据框变量重塑为列表

  23. 23

    R:使用reshape2将数据帧重塑为长数据格式

  24. 24

    将数据重塑为宽格式

  25. 25

    将数据从长格式重塑为宽格式 - 不止一个变量

  26. 26

    使用 data.table 将宽数据重塑为多行长数据

  27. 27

    将列名中具有多个键的数据框从宽到长重塑

  28. 28

    将数据框从分类变量重塑为仅二进制变量

  29. 29

    如何将使用数据重塑为分钟格式?

热门标签

归档