R语言基础知识(1)-数据类型及其常用方法

转载请注明出处:https://blog.csdn.net/xiezhiliang22

1 R语言数据类型

总体的数据类型分为4类,数据框,列表,矩阵,数组。

2 数据框

构造数据框

x <- 10:1
y <- -4:5
q <- c("a","b","c","d","e","f","g","h","i","j")
theDF <- data.frame(First=x,Second=y,Third=q)#此时还添加了列的名字,想大于此时替换了原来初始的名字
theDF

(1)行列参数

nrow()
ncol()
dim(theDF)#行数和列数

(2)名称参数

names(theDF)#检查列名
names(theDF)[3]#特定列名
rownames(theDF)#此时也是可以进行指定行的名字
rownames<-c(里面加上10个参数)#命名行


(3)显示参数

head(theDF,n=7)#显示头部
tail(theDF)#显示尾部

(4)访问元素或者行和列
在这里插入图片描述

theDF[3,2]#单独元素
theDF[3,2:3]#数据框
theDF[c(3,5),2]#向量元素,这里的c(3,5)不是3,4,5  而是3,5行
theDF[,3]#列向量

theDF[,c("First","Second")]#数据框,实现类似python之中的字典的功能
theDF[,"First"]#单独的访问一个列,返回一个向量,此时不是frame.data
theDF[["First"]]#向量输出,同上

theDF["First"]#返回的是data.frame数据框,相当于选择其中的 一个小的数据框
theDF[,"Third",drop=FALSE]#数据框,使用drop=FALSE可以使其输出数据框,与上面的代码相同

class(theDF[["First"]])#此时有是factor变量,类型
class(theDF[,"Third",drop=FALSE])#数据框类型


3 列表

(1)元素创建-混合类型也是可以的(比如一个数据框和其他进行组合)

list(1,2,3) #此时三个元素
list(c(1,3,4))#此时是一个元素
list(c(1,2,3),3:10)#2个元素
vector()#创建一个空的列表
emptylist <- vector(mode = 'list',length = 4))#创建4个Null类型的列表



(2)命名函数

Firstlist<-list(1,2,3) 
names(Firstlist)<-c('first','second','third')#后面向量赋值名称时候一定要加上c

(3) 元素访问 -[[]]来访问第几个元素,也可以像字典索引一样此时是直接输入它的名字

Firstlist<-list(c(1,2,2,3) 
names(Firstlist)<-c('first','second','third')#后面向量赋值名称时候一定要加上c
Firstlist
Firstlist[[1]]#列表第一个元素
Firstlist[[2]]#列表第一个元素

(4)添加元素 此时访问一个不存在的元素就是添加这个元素

Firstlist[['fourth']] <- 4
Firstlist

4 矩阵

矩阵创建

A <- matrix(1:10,nrow=5)

(1)行列属性
nrow ncol dim()和数据框一样
(2)名称属性
和数据框也一样
(3)运算
对应位置相乘用*

B <- A*A
B

结果:
在这里插入图片描述
矩阵转置用t()

C <- t(A)
C

结果:
在这里插入图片描述
数学矩阵相乘用%*%

D <- A%*%t(A)
D

结果:
在这里插入图片描述
注意此时如果矩阵相乘的话此时的名称行名字保留此时左边矩阵的名称
右边保留右边的名称

5 数组

创建

theArarry <- array(1:12,dim=c(2,3,2))#此时的dim()里面的参数是第一个是行,第二个是列,第三个是份额为几个表 

结果:
在这里插入图片描述
(1)访问元素

theArarry[1,,]#此时输出是前面的2个数组的第一行组成的一个列表
 
theArarry[1,,1]#此时第三个元素是选择第几个大的表的第几个元素
 
theArarry[,,1]#此时就是直接输出第一个表

结果:
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值