R基础数据类型2DAY


1、向量
有序
向量的元素有对应的位置 下标从1开始
元素类型统一
常用的数值、字符,逻辑值
R基础数据类型2DAY
num1<-c() 函数把元素变成数值或者列表
num2<-1:10
字符型向量创建
char<-c(‘a’,’b’,"c") 字符型需要加引号 单引号或者双引号都可以
R基础数据类型2DAY
创建逻辑向量
logit<-c(TRUE,FALSE,T,F) 逻辑中只能是TRUE 或者FALSE 可以用T,F代替
包含多种类型的向量
c(1,’a’,TRUE) 会转换为字符类型
R基础数据类型2DAY
因子向量
sex<-c(”F,’M’,’F’,’M’)
factor()函数 转换因子向量
sexf<-factor(sex)
R基础数据类型2DAY
#向量索引

#下标和方括号组合
#不能单用 必须跟在其它向量的后面 索引具体的值可以是整数向量 逻辑向量 字符串向量
num1[1] #第一个位置
R基础数据类型2DAY
num1[c(1,3)]#可以是向量 查看第一个和第三个
num1[c(T,F,T)] #逻辑索引 查看第一个和第三个 T代表查看
num1[-2] #负数表示不想查看的第二个位置
#字符型的向量 需要对访问的值进行命名
num3<-c(‘first’=9.1,’second’=8.2,’third’=7.3)
num3[c(‘first’,’third’)]
R基础数据类型2DAY
a<-20:30 #取其中的偶数
a%%2
a%%2==0 #%%取余 ==恒等于 #返回的是逻辑向量
a[a%%2==0] #根据逻辑向量 去其中的偶数
R基础数据类型2DAY
num1[1]
num1[1]<-100 #对元素进行修改
num1
R基础数据类型2DAY
num1[c(1,3)]<-c(99.9,77.7)
num1
R基础数据类型2DAY
class()#查看变量的类型
class(num1) 数值
class(char) 字符
class(logit) 逻辑
class(sexf) 因子
R基础数据类型2DAY

#2.类的检查和转换
is.character(num1) #查看是否为字符型的
as.character(num1)#转换为字符类型 没有真正转换 只是显示
num1<-as.character(num1)
class(num1)
is.character(char)
R基础数据类型2DAY
is.character(logit)
as.character(logit)
is.numeric() #查看是否为数值型
as.numeric()#转换为数值型
is.logical()#是否为逻辑型
as.logical()#转换为逻辑型
as.logical(c(0,1,2)) #0之外的数转为TRUE 0转换为FALSE
R基础数据类型2DAY

#特殊的值
NA #缺失
NaN #无意义的数
Inf #正无穷
-Inf#负无穷
NULL #参数没有赋值
b<-c(NA,0/1,sqrt(-1),1/0,-1/0)
b
is.na(b)#是否存在缺失值 TRUE表示存在 NA NaN 都记录为缺失值
is.finite()#是否有限的数
is.infinite()#是否无穷的数
R基础数据类型2DAY

知识点
R基础数据类型2DAY

练习
1、 操作题:
生成向量 a,a 的元素是 1 到 100 的整数
2、 操作题:
把向量 a 的第一个元素修改成 0
3、 操作题:
删除向量 a 的前 20 个元素
4、 操作题:
生成向量 b,b 的元素是 1 到 100 之内的奇数
5、 操作题:
生成向量 d,向量 d 的元素有 1,’abc’
6、 操作题:
查看向量 d 的数据类型

答案
1.a<-c(1:100)
a
2.a[1]
a[1]<-0
a
3.a<-c(20:100)
a
4.b<-c(1:100)
b%%2
b%%2==1
b[c(b%%2==1)]
class(b)
5.d<-c(1,’abc’)
d
6.class(d)