为每个观测单位创建两个新的对应行

  • 本文关键字:两个 个观 单位 创建 r
  • 更新时间 :
  • 英文 :


我有一个数据集,每个观察单元都有一列男性和女性。数据集看起来像这样。

2
国家
A 1
B 4 3

我们可以使用pivot_longer

library(dplyr)
library(tidyr)
df %>%
pivot_longer(cols = -Country, names_to = c('Gender', '.value'), 
names_sep = '_')

-输出

# A tibble: 4 x 3
#  Country Gender value
#  <chr>   <chr>  <dbl>
#1 A       Male       1
#2 A       Female     2
#3 B       Male       4
#4 B       Female     3

您也可以使用它,但它在某种程度上与已经发布的类似:

df %>%
pivot_longer(- Country, names_to = "Gender", values_to = "value") %>%
mutate(Gender = str_to_title(Gender), 
Gender = str_remove(Gender, "_value"))
# A tibble: 4 x 3
Country Gender value
<chr>   <chr>  <dbl>
1 A       Male       1
2 A       Female     2
3 B       Male       4
4 B       Female     3

相关内容

最新更新