我是R的新手,我正在尝试从JSON文件中获取学生分数并进行直方图并计算平均分数,但我不确定是否有更简单的方法可以将所有分数从JSON字符串中获取做平均值。以下是我的代码:
library("RJSONIO")
students='[{"SSN":"1234","score":99},{"SSN":"1235","score":100},{"SSN":"1236","score":84}]';
students <- fromJSON(students);
scores = list();
i = 1;
for (rec in students){
scores[i]=rec$score;
i=i+1;
}
提前非常感谢。
答案 0 :(得分:2)
您可以使用lapply
函数从每个列表元素中提取score
值,然后使用unlist
将结果转换为向量:
scores <- unlist(lapply(students, function(x) x$score))
scores
# [1] 99 100 84
现在,您可以使用mean(scores)
来获得平均值。