R语言中的数据类型
mind1.png
mind2.png
mind3.png
mind4.png
标量和向量
标量:一个元素组成的变量
向量:多个元素组成的变量
元素赋值:<-符号
全局赋值符号:<<-符号
向量中提取元素
根据元素位置:
x[4] #x第4个元素
x[-4]#排除法,除了第4个元素之外剩余的元素
x[2:5]#第2到5个元素
x[-(2:4)]#除了2-4元素外的元素
x[c(1,5)] #第1个和第5个元素
根据值的大小
x[x==10]#等于10的元素
x[x<0]
x[x %in% c(1,2,5)]#存在于向量c(1,2,5)中的元素
其中%in%的用法
用法 a %in% table
a值是否包含于table中,为真输出TURE,否者输出FALSE
例如
> x %in% 1
[1] TRUE TRUE TRUE FALSE FALSE TRUE TRUE
> x %in% c(1, 0)
[1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE
> x %in% c(1, 2)
[1] TRUE TRUE TRUE FALSE FALSE TRUE TRUE
顺便补充
1、ifelse
ifelse(test, yes, no)
test为真,输出yes值,否则输出no值。
举例如下:
> x <- c(1,1,1,0,0,1,1)
> ifelse(x != 1, 1, 0) #若果x的值不等于1,输出1,否则输出0
[1] 0 0 0 1 1 0 0
2、which
用法which(test)。
返回test为真值的位置(指针)。
举例如下:
> which(x!=1) #返回x中不等于1的变量值得位置
[1] 4 5
> which(c(T,F,T)) #返回c(T,F,T)中为TURE值的位置。
[1] 1 3
> which(c(1,0,1)) #只对T, F做判断。
#转自http://blog.sina.com.cn/s/blog_3d7eadd20101jam4.html
数据框
读取本地数据
read.table() #读取表格格式,可设定分隔符
read.csv()#读取csv格式
设置行名和列名
colnames(X) #查看列名
rownames(X) #查看行名
colnames(X)<-c("")赋值后更改行名
数据框导出
write.table(data,file = "",sep = ",")#
提取元素
- X[x,y]#第x行第y列
- X[x,]#第x行
- X[,y]#第y列(横着写,这是不够懒也不够优秀却能存在的写法)
- X[y] #第y列(竖着写,这是懒惰又优秀的写法)
- X[a:b]#第a列到第b列
- X[c(a,b)]#第a列和第b列
- X$列名#也可以提取列(优秀写法,而且这个命令还优秀到不用写括号的地步,并且支持Tab自动补全哦,不过只能提取一列)