清屏命令ctrl+L
一、基础
1、产生数据结构
a、直接输入
b、冒号,1:10
c、seq函数
d、rep函数
> 1:10 [1] 1 2 3 4 5 6 7 8 9 10 > 10:2 [1] 10 9 8 7 6 5 4 3 2 > seq(1,10) [1] 1 2 3 4 5 6 7 8 9 10 > seq(1,10,2) [1] 1 3 5 7 9 > rep(2,4) [1] 2 2 2 2 > rep(1:3,times=3) [1] 1 2 3 1 2 3 1 2 3 > rep(x=1:3, each=3) [1] 1 1 1 2 2 2 3 3 3 > rep(1:3,1:3) [1] 1 2 2 3 3 3
2、数据产生
a、c()函数产生向量
b、matrix()函数产生矩阵
c、data.frame()函数产生数据框
d、factor()函数产生因子
e、list()函数产生列表
f、ts()函数产生时间序列
> x = c(3,4,6) > x [1] 3 4 6 > matrix(1:10,2) [,1] [,2] [,3] [,4] [,5] [1,] 1 3 5 7 9 [2,] 2 4 6 8 10 > matrix(1:10,nrow=2,ncol=5,byrow=T) [,1] [,2] [,3] [,4] [,5] [1,] 1 2 3 4 5 [2,] 6 7 8 9 10 > x = data.frame(1:5, 6:10) > x X1.5 X6.10 1 1 6 2 2 7 3 3 8 4 4 9 5 5 10 > x = cbind(x, c('a','b','c','d','e')) #绑上一列字符 > x X1.5 X6.10 c("a", "b", "c", "d", "e") 1 1 6 a 2 2 7 b 3 3 8 c 4 4 9 d 5 5 10 e > dimnames(x) #查看x的行列名 [[1]] [1] "1" "2" "3" "4" "5" [[2]] [1] "X1.5" "X6.10" [3] "c("a", "b", "c", "d", "e")" > colnames(x) #只看列名 [1] "X1.5" "X6.10" [3] "c("a", "b", "c", "d", "e")" > colnames(x) = c('X1','X2','X3') #改列名 > x X1 X2 X3 1 1 6 a 2 2 7 b 3 3 8 c 4 4 9 d 5 5 10 e
3、运算
%% 余数
%/% 整数商
^ 乘方
& | ! 逻辑运算
4、下标的使用(获取元素) 用中括号[]
> x = 1:10 > x [1] 1 2 3 4 5 6 7 8 9 10 > x[x>6] [1] 7 8 9 10 > x[x>6 & x<9] [1] 7 8 > x = matrix(1:20, 4) > x [,1] [,2] [,3] [,4] [,5] [1,] 1 5 9 13 17 [2,] 2 6 10 14 18 [3,] 3 7 11 15 19 [4,] 4 8 12 16 20 > x[x>2 & x<14] [1] 3 4 5 6 7 8 9 10 11 12 13 > x[x>2 & x<14] = NA > x [,1] [,2] [,3] [,4] [,5] [1,] 1 NA NA NA 17 [2,] 2 NA NA 14 18 [3,] NA NA NA 15 19 [4,] NA NA NA 16 20
二、一些数字和统计函数
1、
max() min() mean()
标准差sd() 方差var() 相关系数cor()
求和sum() 求积prod()
中位数median() 分位数quantile()
对数log() 指数exp()
排列factorial() 组合choose()
四舍五入round() 向下取整floor() 向上取整ceiling()
总结summary()
2、
累加cumsum() 秩rank() 排序sort() 倒序rev()
矩阵转置t() 逆矩阵solve() 特征根eigen()
三、流程控制
> x = 6 > while(x>1 & winDialog("yesno",message="you are sb")!='YES') + x = x-1