R语言与其说是编程语言不如说是处理数据,分析数据的一种可视化工具,或者说是R是一种统计分析和计算的环境!
R语言优势:相对来SAS不需要复杂编程,不需要去编写统计算法,编写算法简直是在浪费生命!
1.数据类型
* 数值型【numeric】
*字符型【character】
*逻辑型【logical】
*复数型【complex】
*原型【raw】ps:以二进制形式保存
*默认值【missing value】
数据对象:
1.向量
在之前先说一个seq()函数
x<-seq(1, 10, by=1)
或
x<-seq(1, 10, 1)
//生成一个递增序列【数组】 基数是1 ,末数是10,等差为1
注意事项:下标不是从0开始,而是从1开始。
1.1 向量赋值:
x<-c(1,2,3,4,5) # 用c()函数赋值【c 是create 首字母】参数有很多个。
注意事项:
1.向量所赋的值必须是相同的数据类型。
2.对于字符向量,函数 paste()【粘贴的意思】,可以把单个的字符连成一个字符串,长度不相同时,较短的向量会被重复使用
3,可以利用assign()函数对向量赋值
w<-c(1,2,3,4,5)= assign("w",c(1,2,3,4,5))
1.2 向量运算
遵循数学运算法则
ps:%/%表示整数除法【取整】 %%【取余】
向量运算·会对该向量的每一元素进行相同的运算,出现在同一个表达式的向量,最好是同一长度,如果长度不一,则,较短的向量表达式将被重复使用,表达式的值将和最长的向量等长的向量
1.3 向量的常见函数
length(x)//检测向量x得元素个数
mode(x)//向量x的数据类型
range(x)//向量x范围
which.mix(x)// 向量x中的最小元素下标
sort(x)//对向量x正序列排序
rev(x)// 向量反方向排列
prod(x)向量x中元素得积
match(x)匹配
*******append()//添加函数
x<-c(1.6.7.8.9.10)
append(x, 2:5,1)
结果:1,2,3,4,5,6,7,8,9,10
1.3 向量索引
索引类似C语言中的一维数组中的下标,不同的是这里从1开始索引
2.矩阵 【二维数组】
2.1.生成矩阵的函数matrix()
matrix (data,nrow=行数 ,ncol=列数,byrow=F/T,dimnames= " 行和列的名称 ")
byrow项控制排列元素是否按行进行,默认byrow=F
2.2.矩阵转置 t() 函数
存在矩阵A 转置矩阵t(A)
2.3矩阵运算
遵循矩阵运算法则
2.4矩阵常用的函数
crossprod(A)//取矩阵的对角元素,从左上到右下
Slove(A)矩阵求逆
eigen (A) 求矩阵的特征值和特征向量得运算
det(A)求矩阵的行列式