02学生成绩的折腾

首先要知道的一些东西。

a=seq(1,10) # seq函数 这样搞可以知道1到10的向量


q=runif(10,min=5,max=10) #均匀分布函数runif( ),随机数,带有小数。


w=round(3.1415, digits=2)  #round指定小数的东西

w=round(3.1415, digits=3)  #round还有四舍五入的效果

w=round(3.1415) #直接变成整数


02学生成绩的折腾_第1张图片

e=rnorm(20,mean=5,sd=7) #正态分布函数rnorm( ),mean就是平均值,sd就是标准差


r=c(55,66,77,88,999,4335,666)

r[which(r>100)]=100   #which能让大于100的都变成100


t =sum(c(1,2,3))  #求总数。


模拟产生统计专业同学的名单(学号区分),记录数学分析,线性代数,概率统计三

科成绩,然后进行一些统计分析

num = seq(1,100)


02学生成绩的折腾_第2张图片

数学=round(runif(100,min=80,max=100))   #均匀分布函数runif


02学生成绩的折腾_第3张图片

语文=round(rnorm(100,mean=80,sd=7)) #正态分布函数rnorm


02学生成绩的折腾_第4张图片

英语=round(rnorm(100,mean = 83,sd=18)) #由于正态分布的 标准差很大,会出现超过100的现象


02学生成绩的折腾_第5张图片

英语[which(英语>100)]=100   #不能运行这种现象,所以用到了which,就没有超过100的


02学生成绩的折腾_第6张图片

x=data.frame(num,数学,语文,英语) #放到数据框里面。


02学生成绩的折腾_第7张图片

计算各科平均分

colMeans(x)  # 对列求平均值,就连学号的平均值也算出来了。


colMeans(x) [c("数学","语文","英语")] #就是不显示 学号


apply 用到这个函数


02学生成绩的折腾_第8张图片

apply(x,2, mean) # 2是行


apply(x,1, mean) # 1是列,试试看就懂了


02学生成绩的折腾_第9张图片

求各科最高最低分

apply(x,2,max)  #max 最高


#额~,语文101分,这下子 尴尬了 ,算了。知道正态分布两头小,中间大,就行了。就当那个学生后台强硬,就是多1分出来。

apply(x,2,min)  #min最低


求出每人总分

apply(x[c("数学","语文","英语")],1,sum)


02学生成绩的折腾_第10张图片

完成睡觉。

你可能感兴趣的:(02学生成绩的折腾)