r - 使用 R 中的管道创建 data.frame - 并命名列

标签 r dplyr

我知道我可以通过其他方式做到这一点,但我只是好奇。

dfDice = sample(1:6, 10000, replace = TRUE) %>%
            data.frame()

上面创建了一个 data.frame,其中列标题称为“.”。

所以我的第一个问题是我可以将列标题通过管道传输到我的代码中吗?我尝试将其放入 data.frame() 函数中,但它只是创建了一个新列。

我的第二个问题是,我可以将多个列传输到 data.frame 中,还是必须这样做?:

dfDice = (num = sample(1:6, 10000, replace = TRUE) %>% 
              data.frame(letters = sample(LETTERS, 10000, replace = TRUE))

再次,我知道这不是创建 data.frame 的最佳方式,我只是从学习的角度好奇并试图完全理解管道。

最佳答案

So my first question is can I pipe the column header into my code? I have tried putting it in my data.frame() function but it just creates a new column.

对于单列,您有两种选择:

dfDice <- sample(1:6, 10000, replace = TRUE) %>%
  data.frame() %>%
  setNnames("num")

dfDice <- sample(1:6, 10000, replace = TRUE) %>%
  data.frame(num = .)

And my second question is, can I pipe multiple columns into a data.frame?

sample(1:6, 5, replace = TRUE) %>% 
  cbind(sample(LETTERS, 5, replace = TRUE)) %>% 
  as.data.frame() %>% 
  setNames(c("num", "letters"))

关于r - 使用 R 中的管道创建 data.frame - 并命名列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57305426/

相关文章:

r - 有没有办法在 Rmarkdown 中执行条件 Markdown block ?

javascript - 使用 R Shiny 比较条件面板中的日期

javascript - Shiny - 将 javascript 变量存储到 mysql 数据库

r - 如何有条件地将多列中的值替换为 NA

r - 根据 dplyr 中的条件更改多个列值

r - 删除函数内data.table的列

r - 在R中处理readLines()函数

regex - R dplyr : rename variables using string functions

r - 有效地迭代行以动态/顺序填充向下行的变量

r - 使用混合数据连接多个表