r-从向量中创建具有突变列名的空列

  • 本文关键字:突变 向量 创建 r dplyr
  • 更新时间 :
  • 英文 :


有一个包含一列的数据帧df。

df <- data.frame(pseudonym = c("a", "b", "c", "d"))
df
pseudonym
1         a
2         b
3         c
4         d

现在,我喜欢创建具有来自字符向量(df2和sn(的列名的空列。

sn <- c("sn01", "sn02", "sn03")
sn
[1] "sn01" "sn02" "sn03"

df2应该是

df2 <- data.frame(
pseudonym = c("a", "b", "c", "d"),
sn01 = NA,
sn02 = NA,
sn03 = NA,
sn04 = NA
)
df2
pseudonym sn01 sn02 sn03 sn04
1         a   NA   NA   NA   NA
2         b   NA   NA   NA   NA
3         c   NA   NA   NA   NA
4         d   NA   NA   NA   NA

我在找一个类似的小声明

df2 <- mutate___(df, ..., sn)

有人能帮忙吗?

这可能并不真正符合tidyverse的精神,但您可以进行

df %>% mutate(`[<-`(df, sn, value = NA))
#>   pseudonym sn01 sn02 sn03
#> 1         a   NA   NA   NA
#> 2         b   NA   NA   NA
#> 3         c   NA   NA   NA
#> 4         d   NA   NA   NA

最新更新