> x<-c(1,2,3) #将3个数据赋值给对象x
> x
[1] 1 2 3
> a<-c("a","b","c")
> a
[1] "a" "b" "c"
> barplot(x) #绘制对象x的条形图
> m<-1:9 #生成1~9数值向量
> mat<-matrix(a, #创建向量m的矩阵
+ nrow=2,ncol=3, #矩阵行数2,列数3
+ byrow=TRUE) #按行填充矩阵的元素
> mat
[,1] [,2] [,3]
[1,] "a" "b" "c"
[2,] "a" "b" "c"
> t(mat) 对矩阵mat转置
[,1] [,2]
[1,] "a" "a"
[2,] "b" "b"
[3,] "c" "c"
> colnames(mat)=c("m","n","s")
> rownames(mat)=c("m","n") #给矩阵行列分别命名
> mat
m n s
m "a" "b" "c"
n "a" "b" "c"
> names<-c("刘文涛","王宇","田思雨","徐娜","丁文彬")
> stat<-c(65,78,56,70,74)
> math<-c(99,88,77,66,55)
> econ<-c(45,34,67,23,90)
> table1<-data.frame(学生姓名=names,统计学=stat,数学=math,经济学=econ) #将数据组成数据框形式存入table1中
> table1
学生姓名 统计学 数学 经济学
1 刘文涛 65 99 45
2 王宇 78 88 34
3 田思雨 56 77 67
4 徐娜 70 66 23
5 丁文彬 74 55 90
> head(table1,3) #显示前三行
学生姓名 统计学 数学 经济学
1 刘文涛 65 99 45
2 王宇 78 88 34
3 田思雨 56 77 67
> tail(table1,3) #显示后三行
学生姓名 统计学 数学 经济学
3 田思雨 56 77 67
4 徐娜 70 66 23
5 丁文彬 74 55 90
> library(dplyr) #加载包
载入程辑包:‘dplyr’
The following objects are masked from ‘package:stats’:
filter, lag
The following objects are masked from ‘package:base’:
intersect, setdiff, setequal, union
> arrange(table1,学生姓名) #按姓名排序并输出
学生姓名 统计学 数学 经济学
1 丁文彬 74 55 90
2 刘文涛 65 99 45
3 田思雨 56 77 67
4 王宇 78 88 34
5 徐娜 70 66 23
> arrange(table1,desc(数学)) #按数学分数降序排列
学生姓名 统计学 数学 经济学
1 刘文涛 65 99 45
2 王宇 78 88 34
3 田思雨 56 77 67
4 徐娜 70 66 23
5 丁文彬 74 55 90
table1_1<-read.csv("D:/289250《统计学—基于R》(第4版)—例题和习题数据/《统计学—基于R》(第4版)—例题和习题数据(公开资源)/example/chap01/table1_1.csv") #将table1_1导入
> table1_1
姓名 统计学 数学 经济学
1 刘文涛 68 85 84
2 王宇翔 85 91 63
3 田思雨 74 74 61
4 徐丽娜 88 100 49
5 丁文彬 63 82 89
> library(reshape2)
> tab.long<-melt(table1_1,id.vars="姓名",variable.name="课程",value.name="分数") #融合table1_1与id变量,变量名=“课程”,数值名=“分数”
> tab.long
姓名 课程 分数
1 刘文涛 统计学 68
2 王宇翔 统计学 85
3 田思雨 统计学 74
4 徐丽娜 统计学 88
5 丁文彬 统计学 63
6 刘文涛 数学 85
7 王宇翔 数学 91
8 田思雨 数学 74
9 徐丽娜 数学 100
10 丁文彬 数学 82
11 刘文涛 经济学 84
12 王宇翔 经济学 63
13 田思雨 经济学 61
14 徐丽娜 经济学 49
15 丁文彬 经济学 89
> rnorm(n=20,mean=0,sd=1) #产生20个标准正态分布随机数
[1] 0.041778499 -0.813617619 -0.792105013 0.579581033
[5] 1.784086603 0.869476694 0.092839511 0.347027823
[9] 1.339232069 -0.601451005 0.344647300 -0.223788956
[13] 0.007757372 -1.472627316 -1.082258100 -0.514999363
[17] 2.672550913 -0.925236623 0.284640606 0.265435655
> set.seed(15)
> N<-1:20
> n1<-sample(N,size=10);n1 #无放回抽取10个数据
[1] 5 15 10 2 9 6 1 20 16 11
> n2<-sample(N,size=10,replace=TRUE);n2 #有放回抽取10个数据
[1] 20 6 1 12 5 2 10 3 2 20 #每次代码运行会产生不同的结果
统计学—基于R 第一章 数据处理
最新推荐文章于 2022-11-12 09:25:23 发布