[英]How to transform hierarchical data (from Beyond 20/20) from a partially wide format to long format in R?
我有一些從 Beyond 20/20 導出的人口普查數據,部分是長格式,部分是寬格式。 我正在為如何重新格式化數據而苦苦掙扎,因為它並不完全是寬格式。 在下面的數據集中,有每個教育級別和 state 的男性和女性人數。 例如:
> have
State Education Male Female
1 CA 1 3 4
2 CA 2 4 6
3 NV 1 7 8
4 NV 2 9 19
但是,我希望數據是完全長格式的。 這意味着擁有每個獨特的 state、教育和性別類別中的個體數量。 例如:
> want
State Education Sex Number
1 CA 1 Male 4
2 CA 1 Female 3
3 CA 2 Male 4
4 CA 2 Female 6
5 NV 1 Male 7
6 NV 1 Female 8
7 NV 2 Male 9
8 NV 2 Female 19
提前感謝您的任何想法或建議。
我們可以使用來自pivot_longer
tidyr
的 pivot_longer:
library(tidyr)
library(dplyr)
df %>%
pivot_longer(
cols=c(Male, Female),
names_to = "Sex",
values_to = "Number"
)
State Education Sex Number
<chr> <int> <chr> <int>
1 CA 1 Male 3
2 CA 1 Female 4
3 CA 2 Male 4
4 CA 2 Female 6
5 NV 1 Male 7
6 NV 1 Female 8
7 NV 2 Male 9
8 NV 2 Female 19
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.