R语言第六讲 数据的统计分析
程序员文章站
2022-03-23 08:33:23
...
基本命令练习
下面的代码涵盖了一些分析数据常用的一些R语言的命令:
#基本向量、矩阵的一般操作
x <- c(1,3,2,5)
x
x = c(1,6,2)
x
y = c(1,4,3)
length(x)
length(y)
x+y
ls()
rm(x,y)
ls()
rm(list=ls())
?matrix
x=matrix(data=c(1,2,3,4), nrow=2, ncol=2)
x
x=matrix(c(1,2,3,4),2,2)
matrix(c(1,2,3,4),2,2,byrow=TRUE)
sqrt(x)
x^2
x=rnorm(50)
y=x+rnorm(50,mean=50,sd=.1)
cor(x,y)
set.seed(1303)#代码产生完全相同的一组随机数
# 用于设定随机数种子,一个特定的种子可以产生一个特定的伪随机序列,这个函数的主要目的,
# 是让你的模拟能够可重复出现,因为很多时候我们需要取随机数,但这段代码再跑一次的时候,
# 结果就不一样了,如果需要重复出现同样的模拟结果的话,就可以用set.seed()。在调试程序
# 或者做展示的时候,结果的可重复性是很重要的,所以随机数种子也就很有必要。
rnorm(50)
set.seed(3)#里面的参数可以是任意整数
y=rnorm(100)
mean(y) #计算均值
var(y) #计算方差
sqrt(var(y)) #计算开方
sd(y) #计算标准差
#分享一些作图函数
x=rnorm(100)
y=rnorm(100)
plot(x,y)
plot(x,y,xlab="this is the x-axis",ylab="this is the y-axis",main="Plot of X vs Y")
pdf("Figure.pdf")#用jpeg()函数绘制jpeg图
plot(x,y,col="green")
dev.off()
x=seq(1,10)
x
x=1:10
x
x=seq(-pi,pi,length=50)
# contour()产生一个个等高线图,表示三维数据
y=x
f=outer(x,y,function(x,y)cos(y)/(1+x^2))
contour(x,y,f)#?contour掌握更多用法,调整函数输出
contour(x,y,f,nlevels=45,add=T)
fa=(f-t(f))/2
contour(x,y,fa,nlevels=15)
image(x,y,fa)#热图,能产生一个有颜色的图
persp(x,y,fa)#产生一个三维图
persp(x,y,fa,theta=30)
persp(x,y,fa,theta=30,phi=20)#参数theta与phi控制观看的角度
persp(x,y,fa,theta=30,phi=70)
persp(x,y,fa,theta=30,phi=40)
library(rgl)
open3d()
surface3d(x,y,fa,back="lines",color=terrain.colors(x^2))#绘制曲面
# Indexing Data
dev.off
A=matrix(1:16,4,4)
A
A[2,3]
A[c(1,3),c(2,4)]
A[1:3,2:4]
A[1:2,]
A[,1:2]
A[1,]
A[-c(1,3),]
A[-c(1,3),-c(1,3,4)]
dim(A) #观看A向量的维数
R语言加载分析数据的几种方法
data(Auto,package='ISLR')#输出数据框格式
fix(Auto)#电子表格浏览数据
Auto=read.table("Auto.data",header=T,na.strings="?")
fix(Auto)
Auto=read.csv("customer.csv",header=T,na.strings="?")#用指定的标号作缺失标记
fix(Auto)#挺好用的哇塞
dim(Auto)
Auto[1:4,]
Auto=na.omit(Auto)#简单剔除缺失值所在的行
dim(Auto)
names(Auto)
# Additional Graphical and Numerical Summaries
plot(cylinders, mpg)
plot(Auto$cylinders, Auto$mpg)
attach(Auto)
plot(cylinders, mpg)
cylinders=as.factor(cylinders)#将定量的变量转换为定性变量
plot(cylinders, mpg)
plot(cylinders, mpg, col="red")
plot(cylinders, mpg, col="red", varwidth=T)
plot(cylinders, mpg, col="red", varwidth=T,horizontal=T)
plot(cylinders, mpg, col="red", varwidth=T, xlab="cylinders", ylab="MPG")
#如果绘制在x轴上的变量是定性的,箱线图(boxplot)将自动通过plot函数产生:数据没有,需作验证
hist(mpg)
hist(mpg,col=2)
hist(mpg,col=2,breaks=15)
pairs(Auto)
pairs(~ mpg + displacement + horsepower + weight + acceleration, Auto)
plot(horsepower,mpg)
identify(horsepower,mpg,name)#交互指定显示某个变量值
summary(Auto)
summary(mpg)
最后保存当前的工作空间,以便下次加载到这次的工作状态
savehistory()
loadhistory()
R语言分析数据
给出college.csv数据中的内容,college.csv CSDN无法加载,若有小伙伴需要,可以留言哦(*^_^*)
college = read.csv("data//college.csv")#加载数据
#用ecel表格方式打开查看某数据
fix(college)
#给college数据集中每一行数据命名
rownames(college) = college[,1]
#删除掉college数据中的第一列数据
college = college[,-1]
fix(college)
summary(college)
X Private Apps
Abilene Christian University: 1 No :212 Min. : 81
Adelphi University : 1 Yes:565 1st Qu.: 776
Adrian College : 1 Median : 1558
Agnes Scott College : 1 Mean : 3002
Alaska Pacific University : 1 3rd Qu.: 3624
Albertson College : 1 Max. :48094
(Other) :771
Accept Enroll Top10perc前10名 Top25perc
Min. : 72 Min. : 35 Min. : 1.00 Min. : 9.0
1st Qu.: 604 1st Qu.: 242 1st Qu.:15.00 1st Qu.: 41.0
Median : 1110 Median : 434 Median :23.00 Median : 54.0
Mean : 2019 Mean : 780 Mean :27.56 Mean : 55.8
3rd Qu.: 2424 3rd Qu.: 902 3rd Qu.:35.00 3rd Qu.: 69.0
Max. :26330 Max. :6392 Max. :96.00 Max. :100.0
F.Undergrad P.Undergrad Outstate Room.Board
Min. : 139 Min. : 1.0 Min. : 2340 Min. :1780
1st Qu.: 992 1st Qu.: 95.0 1st Qu.: 7320 1st Qu.:3597
Median : 1707 Median : 353.0 Median : 9990 Median :4200
Mean : 3700 Mean : 855.3 Mean :10441 Mean :4358
3rd Qu.: 4005 3rd Qu.: 967.0 3rd Qu.:12925 3rd Qu.:5050
Max. :31643 Max. :21836.0 Max. :21700 Max. :8124
Books Personal PhD Terminal
Min. : 96.0 Min. : 250 Min. : 8.00 Min. : 24.0
1st Qu.: 470.0 1st Qu.: 850 1st Qu.: 62.00 1st Qu.: 71.0
Median : 500.0 Median :1200 Median : 75.00 Median : 82.0
Mean : 549.4 Mean :1341 Mean : 72.66 Mean : 79.7
3rd Qu.: 600.0 3rd Qu.:1700 3rd Qu.: 85.00 3rd Qu.: 92.0
Max. :2340.0 Max. :6800 Max. :103.00 Max. :100.0
S.F.Ratio perc.alumni Expend Grad.Rate
Min. : 2.50 Min. : 0.00 Min. : 3186 Min. : 10.00
1st Qu.:11.50 1st Qu.:13.00 1st Qu.: 6751 1st Qu.: 53.00
Median :13.60 Median :21.00 Median : 8377 Median : 65.00
Mean :14.09 Mean :22.74 Mean : 9660 Mean : 65.46
3rd Qu.:16.50 3rd Qu.:31.00 3rd Qu.:10830 3rd Qu.: 78.00
Max. :39.80 Max. :64.00 Max. :56233 Max. :118.00
pairs(college[,1:10]) #取college 1到10列的变量,两两做散点图
由上图,可以看看两两变量之间到底有没有函数关系。