如何解决如何使用代表编号的行制作数据集簇,而列是两个变量,簇的值不同
我很困惑。 我有 50 个不同大小的集群,我有两个变量“年份”和“收入水平”。 我现在拥有的数据集有 10,000 行,其中每一行代表一个人。 我想要做的是从这个数据框中形成一个新的数据集,其中每一行代表簇数(50),列是两个变量+簇变量。问题是这两个变量(我们称之为研究水平协变量)对于聚类没有唯一的值。 那么我如何将它们放在每个集群的一个单元格中?
X1<-c(1,1,2,3,4,4) #Clusters
X2<c(1,2) #Covariate1
X3<-c(1991,2001,2002,1998,2014,2015,1990,2004,2006,2005,2003,2000) #Covariate2
data<-data.frame(X1,X2,X3)
我想要的输出应该是这样的:
|Clusters|Covariet1|Covariate2|
|--------|---------|----------|
|1 | ? |? |
|2 | ? |? |
|3 | ? |? |
|4 | ? |? |
意味着不是 16 行的数据框,而是 4 行的数据框
解决方法
以下是如何使用每个集群的协变量的平均值来聚合数据:
df <- data.frame(X1 = c(1,1,2,3,4,4),X2 = c(1,2),X3 = c(1991,2001,2002,1998,2014,2015,1990,2004,2006,2005,2003,2000)
)
library(tidyverse)
df %>% group_by(X1) %>% summarise(mean_cov1 = mean(X2))
# A tibble: 4 x 2
X1 mean_cov1
* <dbl> <dbl>
1 1 2
2 2 1
3 3 1.5
4 4 2
对于您正在处理的案例,您必须确定最相关的聚合是什么。您也可以一次创建多个。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。