作者:fmz4733974 | 来源:互联网 | 2023-05-17 15:12
我有点迷茫,我有一个看起来像这样的数据框:
tract ageClass count
1 [0-4] 71
2 [0-4] 192
3 [0-4] 81
1 [5-8] 9
2 [5-8] 86
3 [5-8] 42
我想得到这样的结果:
tract [0-4] [5-8]
1 71 9
2 192 86
3 81 42
我一直在互联网上寻找解决方案很长一段时间但到目前为止没有任何想法?
非常感谢!
1> David Arenbu..:
我能想到的三种可能的选择(假设您的数据集被调用df
)
xtabs(count ~ tract + ageClass, df)
# ageClass
# tract [0-4] [5-8]
# 1 71 9
# 2 192 86
# 3 81 42
要么
library(reshape2)
dcast(df, tract ~ ageClass, value.var = "count")
# tract [0-4] [5-8]
# 1 1 71 9
# 2 2 192 86
# 3 3 81 42
要么
library(tidyr)
spread(df, ageClass, count)
# tract [0-4] [5-8]
# 1 1 71 9
# 2 2 192 86
# 3 3 81 42