在数据框中粘贴一系列列[R]

时间:2018-01-14 00:37:05

标签: r dataframe text-mining

在数据框中,我尝试将一系列列的内容(从df$firstdf$last)粘贴到新的单列df$merged中。

列的内容是文本字符串。 df&firstdf$last之间的列数是可变的。我尝试了以下代码,但它没有用。

df$merged <- paste(df$first:df$last)

如果要合并的每个列的名称可用,如下面的示例所示,它确实可以正常工作。

df$merged <- paste(df$first, df$second, df$third,df$last)

但是工作的本质是只有通过用户输入知道第一个和最后一个列名称的标题。

1 个答案:

答案 0 :(得分:0)

您可以使用tidyr::unite统一两列之间的所有列。如果需要其他分隔符,请使用sep参数。

library('tidyverse')
df <- tribble(
  ~before_first, ~first, ~second, ~last, ~after_last,
            'a',    'c',     'e',   'h',         'j',
            'b',    'd',     'f',   'i',         'k'
)

df %>%
  unite(merged, first:last)
# # A tibble: 2 x 3
#   before_first merged after_last
# *        <chr>  <chr>      <chr>
# 1            a  c_e_h          j
# 2            b  d_f_i          k