我是R的初学者,我的问题是:在矩阵中,我生成0到20之间的随机标记。每行对应一个学生,每一列对应一个主题。我会计算每个学科的平均学生人数,但我不知道如何测试每一栏中的标记是否大于10.我认为,我必须使用“申请”和一个功能,但我不知道没成功......
nb.etu <- 60
nb.mat <- 12
notes <- matrix(
data = runif (n = nb.mat*nb.etu, min = 0, max = 20),
nrow = nb.etu,
ncol = nb.mat)
sexe <- sample(c("F","M"),size=60,replace=TRUE)
matrice <- cbind(notes,sexe)
# Class average
moy.mat <- apply(notes,2,mean)
# Student average
moy.etu <- apply(notes,1,mean)
# Student average for each subject
mod.info <- notes[,1:5]
moy.info <- apply(mod.info,1,mean)
mod.bio <- notes[,6:12]
moy.bio <- apply(mod.bio,1,mean)
答案 0 :(得分:1)
我假设你想评估每列的平均值是否大于10。
试试这个。
test.passed <- ifelse(moy.mat > 10, "Passed", "Failed")
rbind(notes, test.passed)
然后尝试这个。
sum(apply(notes, 1, function(x) all(x > 10)))
这是做什么......