r - 将两列或多列合并为一列

我有四列:

Year I I I
1951 4 6 7
1952 8 0 3
1953 3 2 9

我如何将它们组合成两个这样的?:

Year I
1951 4
1951 6
1951 7
1952 8
1952 0
1952 3
1953 3
1953 2
1953 9

回答1

我不完全确定你的格式是什么,但可能你想要这样的东西,方法是使用 pivot_longer 使你的 table 从宽到长:

df <- data.frame(Year = c(1951, 1952, 1953),
                 v1 = c(4,8,3),
                 v2 = c(6,0,2),
                 v3 = c(7,3,9))

library(tidyr)
df %>%
  pivot_longer(!Year, names_to = "variable", values_to = "values")

输出:

# A tibble: 9 × 3
   Year variable values
  <dbl> <chr>     <dbl>
1  1951 v1            4
2  1951 v2            6
3  1951 v3            7
4  1952 v1            8
5  1952 v2            0
6  1952 v3            3
7  1953 v1            3
8  1953 v2            2
9  1953 v3            9

相似文章

c - c 程序处理 multithreading

我的c程序需要帮助,我已经完成了大部分,但还有一些问题。该计划是关于**探索进程和线程之间的同步。**在一个程序中给定了三(3)个流程,这些流程协同工作以解决生产者消费者问题:2个过程是“生产者”,每...

随机推荐

最新文章