循环遍历具有唯一值的一列,并按另一列分组以计算方差
Loop through one column with unique values, and group by another to calculate the variance
有人可以帮我解决这个问题吗?我有一个如下所示的数据框:
Scores ID Value
M1 A 5.67
M1 A 9.99
M2 A 10.96
M1 A 7.89
M1 B 9.36
M3 A 4.56
M2 A 5.55
M1 B 8.97
在这个数据集中,分数是细胞类型,每个细胞类型的 ID 重复(即 M1 有 3 个 As)
我想遍历每个分数(细胞类型),然后计算每个重复 ID(在本例中为 A)的分数的方差。所以基本上我是在测量每个 ID 内(而不是之间)每个分数的可变性。
下面是我想到的代码,但是 .csv 文件中的所有值都具有相同的输出。
for (i in df1$scores) {
T1 <- aggregate(value ~ ID, df1, function(x) c(Var=var(x), Count=length(x)))
T1
write.csv(T1,file=paste0(i,"_withinID.csv"))
}
这里我们需要循环遍历'scores'的unique
值,aggregate
应该基于数据
的subset
for(i in unique(df1$scores)) {
T1 <- aggregate(value ~ ID, subset(df1, scores == i),
function(x) c(Var = var(x), Count = length(x)))
write.csv(T1, file = paste0(i, "_withinID.csv"))
}
有人可以帮我解决这个问题吗?我有一个如下所示的数据框:
Scores ID Value
M1 A 5.67
M1 A 9.99
M2 A 10.96
M1 A 7.89
M1 B 9.36
M3 A 4.56
M2 A 5.55
M1 B 8.97
在这个数据集中,分数是细胞类型,每个细胞类型的 ID 重复(即 M1 有 3 个 As) 我想遍历每个分数(细胞类型),然后计算每个重复 ID(在本例中为 A)的分数的方差。所以基本上我是在测量每个 ID 内(而不是之间)每个分数的可变性。
下面是我想到的代码,但是 .csv 文件中的所有值都具有相同的输出。
for (i in df1$scores) {
T1 <- aggregate(value ~ ID, df1, function(x) c(Var=var(x), Count=length(x)))
T1
write.csv(T1,file=paste0(i,"_withinID.csv"))
}
这里我们需要循环遍历'scores'的unique
值,aggregate
应该基于数据
subset
for(i in unique(df1$scores)) {
T1 <- aggregate(value ~ ID, subset(df1, scores == i),
function(x) c(Var = var(x), Count = length(x)))
write.csv(T1, file = paste0(i, "_withinID.csv"))
}