R_Studio(学生成绩)对两个班级学生成绩进行集合,重新计算学生综合测评成绩并对学生按综合测评成绩进行排名

  对成绩表"11_1_1.csv" "11_2_1.csv"进行集成,并重新计算4门课程的平均分为综合测评,增加“排名”属性,并按排名排序

  "11_1_1.csv","11_2_1.csv"是两个不同班级的学生

  

 

setwd(‘D:\\data‘)

#读取数据
dat1=read.csv(‘./11_1_1.csv‘,he=T)
dat2=read.csv(‘./11_2_1.csv‘,he=T)

result=rbind(dat1,dat2) #数据集列合并

#计算出各个学科的平均分
valuation=apply(result[,3:6], 1,mean)

#将各个学生的平均分写入综合成绩
result[,7]=valuation

#将学生按综合成绩从高到底进行排名
dat=result[order(result$综合测评,decreasing = TRUE), ]

#添加排名属性
#计算出学生的人数,使用seq()函数从1开始生成学生学号
temp=length(dat$学号)

sub=seq(1,temp,1)
output=data.frame(dat,‘排名‘=sub)#变量重命名,存入数据

output

  集成结果:

  

  apply函数用于处理矩阵类型的数据

  apply函数三个参数

    第一个参数:矩阵对象

    第二个参数:要操作矩阵的维度,1表示对行进行处理,2表示对列进行处理

    第三个参数:处理数据的函数。apply会分别一行或一列处理该矩阵的数据

valuation=apply(result[,3:6], 1,mean,na.rm=TRUE)

(当成绩数据中存在缺失值时可使用 na.rm=TRUE)

  seq(from,to,length)函数:

     第一个参数:生成一组数字,从from开始,

        第二个参数:到to结束,

     第三个参数:每两个数间的间隔是length

sub=seq(1,temp,1)

(生成一组数字,从1开始,到temp结束,间隔是1)

  sub=seq(1,6,3)

  输出:[1] 1 4

原文地址:https://www.cnblogs.com/1138720556Gary/p/9720437.html

时间: 2024-10-27 17:59:20

R_Studio(学生成绩)对两个班级学生成绩进行集合,重新计算学生综合测评成绩并对学生按综合测评成绩进行排名的相关文章

Java基础知识强化之集合框架笔记49:键盘录入5个学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分从高到低输出到控制台

1. 键盘录入5个学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分从高到低输出到控制台: 分析: A: 定义学生类    B: 创建一个TreeSet集合       C: 总分从高到底如何实现呢?        D: 键盘录入5个学生信息       E: 遍历TreeSet集合 2. 代码示例: (1)Student.java: 1 package cn.itcast_08; 2 3 public class Student { 4 // 姓名 5 private String na

对比两个同类型的泛型集合并返回差异泛型集合 ——两个List<类名>的比较

1: /// <summary> 2: /// 对比两个同类型的泛型集合并返回差异泛型集合 3: /// </summary> 4: /// <typeparam name="T">泛型类型</typeparam> 5: /// <param name="newModel">修改后的数据集合</param> 6: /// <param name="oldModel"&g

构建一个学生Student,根据类Student的定义,创建五个该类的对象,输出每个学生的信息,计算并输出这五个学生Java语言成绩的平均值,以及计算并输出他们Java语言成绩的最大值和最小值。

定义一个表示学生信息的类Student,要求如下: (1)类Student的成员变量: sNO 表示学号: sName表示姓名: sSex表示性别: sAge表示年龄: sJava:表示Java课程成绩. (2)类Student带参数的构造方法: 在构造方法中通过形参完成对成员变量的赋值操作. (3)类Student的方法成员: getNo():获得学号: getName():获得姓名: getSex():获得性别: getAge()获得年龄: getJava():获得Java 课程成绩 根据类

编号0-999的学生,为每位学生随机生成考试成绩(0-100分),找出10个最好成绩,学生获得相同分数最多的5个分数,并列出获得这几个分数的学生编号清单。

package com.cn; import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.Map.Entry;import java.util.Random; /** * Created by Sam on 2017/1

C语言编程入门——综合练习(三)学生管理系统

C语言学生管理系统: 此程序综合了链表,排序等知识,可以说是一个综合练习. # include <stdio.h> # include <malloc.h> # include <stdlib.h> typedef struct Student { char name[20]; char sex; int age; int score; char sid[20]; struct Student * pNext; }ST, *PST; void print(void);

(013)每日SQL学习:确定两个日期之间的工作日天数和计算一年周内各日期次数

1.确定两个日期之间的工作日天数 --确定两个日期之间的工作日天数with x0 as (select to_date('2018-01-01','yyyy-mm-dd') as 日期 from dual union all select to_date('2018-01-15','yyyy-mm-dd') as 日期 from dual ), x1 as --日期并列显示 (select min (日期) 开始日期,max(日期) 结束日期 from x0 ), x2 as --日期之间的天数

R语言中两个数组(或向量)的外积怎样计算

所谓数组(或向量)a和b的外积,指的是a的每个元素和b的每个元素搭配在一起相乘得到的新元素.当然运算规则也可自己定义.外积运算符为 %o%(注意:百分号中间的字母是小写的字母o).比如: > a <- 1:2 > b <- 3:5 > d <- a %o% b > d [,1] [,2] [,3] [1,] 3 4 5 [2,] 6 8 10 注意维数公式为: dim(d) = c( dim(a) , dim(b) ) 实际上R语言提供了一个更为一般化得外积函数o

孩子九年义务教育阶段的成长经历

近来由于闲得无事,总想写点什么,又欣喜孩子被华师一附中提前录取,于是就有个想法,把孩子的这九年来成长过程中的酸甜苦辣回忆回忆,如果再能有一篇比较系统的经验和教训的总结,我想会对论坛里的家长(我觉得经常能来论坛的家长应该算是比较有心而且想把孩子培养好的家长)有所帮助的. 原本想把帖子发在中学区,但后来想,应该发在低年级区作用更大,原因就是我觉得孩子的教育要从刚上小学的时候抓起,这样孩子的成长一路才能更顺利. 小学跨区择校:孩子上哪所小学我们还是认真考虑和商量了一下的,先有个亲戚的孩子上的光华路小学

PCA revisit

都知道PCA可以做降维,那它为什么可以降维,究竟是怎么降维的呢? 1. 为什么我们要降维? 我们的样本数据好好的,为什么要去做降维,第一个要想清楚这个问题. 也许你是要训练一个分类器,觉得当前特征维度的太高,想去除冗余的维度,选择有区分性的维度 也许你是觉得维度太高,导致系统速度慢,存储开销大 也许你是觉得数据里面有噪声,想去除噪声 总之很多原因导致我们要去做降维,但是有两个主要的因素,就是去除数据里的冗余和噪声. 2. PCA是怎么去做降维的,怎么去除冗余和噪声的? PCA有一个假设,数据中越