gpt4 book ai didi

r - 我有一个包含多个组的列。我希望每个组都作为自己的列

转载 作者:行者123 更新时间:2023-12-04 10:56:54 24 4
gpt4 key购买 nike

我有一个包含两列的数据框。第一列包含组,第二列包含值。

我希望每个分组都是一列,并且我希望所有关联的值都位于相应的列下。

我更喜欢 tidyverse 解决方案。如果可能,我更喜欢自动获取每个组并在其下创建具有适当值的新列的解决方案。我不想手动输入标题。

这就是我所拥有的:

df <- data.frame(Group = c("A", "A", "A", "B", "B", "B"),
Value = c(2,2,2,3,3,3))
df$Group <- as.character(df$Group)

这就是我要的:
want <- data.frame(A = c(2,2,2),
B = c(3,3,3))

最佳答案

tidyverse ,我们可以使用 pivot_wider按“组”创建序列列后

library(dplyr)
library(tidyr)
df %>%
group_by(Group) %>%
mutate(rn = row_number()) %>%
pivot_wider(names_from = Group, values_from = Value) %>%
select(-rn)
# A tibble: 3 x 2
# A B
# <dbl> <dbl>
#1 2 3
#2 2 3
#3 2 3

base R , 可以是 unstack
unstack(df, Value ~ Group)

或与 data.table
library(data.table)
dcast(setDT(df), rowid(Group) ~ Group, value.var = 'Value')[, .(A, B)]

关于r - 我有一个包含多个组的列。我希望每个组都作为自己的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59112100/

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