gpt4 book ai didi

r - 在 R 中转换 data.frame 的命令

转载 作者:行者123 更新时间:2023-12-03 04:15:55 26 4
gpt4 key购买 nike

我正在努力想出正确的流程来转换我正在分析的一些数据,而无需诉诸脚本语言。

数据采用类似于以下的格式

data.frame(Group=LETTERS[1:3],Total=c(100,120,130),Modified=c(12,15,32))

Group Total Modified
1 A 100 12
2 B 120 15
3 C 130 32

我希望生成的数据框看起来像

    +-------+----------+
| Group | Modified |
+-------+----------+
| A | Y |
| A | Y |
| A | Y |
| . | . |
| . | . |
| . | . |
| A | N |
| A | N |
| B | Y |
| B | Y |
| . | . |
| . | . |
| . | . |
| B | N |
+-------+----------+

应有 12 行包含 A 组且修改 = Y 的行,以及 88 行包含 A 组且修改 = N 的行。B、C 等也是如此。

在大多数情况下,每行都需要重复其他列以及组信息。

最佳答案

您可以将 rep 与适当的 times 参数一起使用。

用于优雅编码的data.table解决方案

library(data.table)
# your data is in the data.frame DF
DF <- data.table(DF)
levels <- c('Y', 'N')
DF[,list(Modified = rep(levels,c(Modified,Total-Modified))),by = Group]

关于r - 在 R 中转换 data.frame 的命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14844123/

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