R语言学习笔记(二、数据基础知识)

R语言学习笔记(二、数据基础知识)

基本的数据类型

# R语言数据类型
# 数值型
123 
2.34
# 字符型
"Hello World"
# 逻辑型
TRUE
T
FALSE
F
# 分类型变量(因子型,后面会介绍)

# 一些常用的和数据类型相关的函数
# is函数: 判断数据类型 
is.numeric(123)
is.character('123')
is.logical(TRUE)

# as函数:转换数据类型
as.numeric('123456')
as.numeric(T) #1
as.numeric(F) #0
as.character(123)
as.logical(2) #logical:0转为FALSE,非0转为TRUE

# 特殊值
NA #一般表示缺失值
NULL #空
NaN #非数值
Inf #正无穷
-Inf #负无穷

#常量
pi
letters #26个小写英文字母
LETTERS #26个大写英文字母
month.name 
month.abb

基本的数据结构

  • 赋值语句
    给R对象赋值使用 <- ,不推荐使用=,<- 的快捷键为alt - 或者alt +。
  • R中的数据结构主要有:向量、矩阵、列表、数据框;重点掌握各种R对象的创建和索引
#创建向量,向量中的元素数据类型需一致
v1 <- 1:5 
# c:连接函数
v2 <- c(3,4,5,6,7) 
# rep:重复函数
v3 <- rep(v2,times=2,each=2) 
# seq:创建向量函数
v4 <- seq(from=2,to=100,by=2) #by设置步长
v4 <- seq(from=2,to=100,length.out = 50) #length.out设置输出向量的长度

# 赋值向量元素名称
label <- 'age'
names(v1) <- label

# 向量长度
length(v2)
length(v2) <- 10 #赋值操作的对象可以不限于Object,也可以是一些函数的输出

#向量索引[],索引从1开始
v1[3]
v1[c(1,2,3)]
v1[-c(1,2,3)] #索引除()内以外的值
v1['age'] #名称索引
v1[v1%%2==1] #条件索引


##############################
# 矩阵

# 创建矩阵
m1 <- matrix(data=1:6,
             nrow=2,
             # ncol=3,
             byrow=F,
             dimnames = NULL)
# 行列名称
colnames(m1)
rownames(m1)
dimnames(m1)

# 维度信息
dim(m1)
ncol(m1)
nrow(m1)

# 矩阵索引
m1[1,2] 
m1[1,] #索引某行
m1[,2] #索引某列

# 将矩阵转换为向量
as.vector(m1)

# 创建高维数组
array()

##################################################
# 列表:列表是R中十分重要的数据结构
# 创建列表:列表中的元素可以是不同的数据类型或结构
l1 <- list(com1 = v1,
           com1 = m1)
# 长度信息
length(l1)
# 列表索引
l1$com1 #返回向量
l1[['com1']] #返回矩阵
l1[[1]] #返回矩阵
l1['com1'] #返回列表
l1[2]

# 添加列表元素
l1$com3 <- 1:10

# 将列表转为向量
unlist(l1)

l.ex <- list(a = list(1:5, LETTERS[1:5]), b = "Z", c = NA)
unlist(l.ex, recursive = FALSE)
unlist(l.ex, recursive = TRUE)

#######################################################
# 数据框
df1 <- data.frame(
    c1 = 2:5,
    c2 = LETTERS[2:5]
)

# 维度信息
dim(df1)
ncol(df1)
nrow(df1)

# 获取行列名称
dimnames(df1)
names(df1)
colnames(df1)

# 数据框索引
df1[1:2,2] #返回向量
df1[,2] #返回向量
df1[1,] #返回数据框
df1$c1 #返回向量
df1['c1'] #返回数据框
df1[[2]]#返回向量
#每种索引方式返回的数据类型不同。

#生成用于网格搜索的数据框
df1$c1 <- 1:2
expand.grid(mtry=2:5,
            ntree=c(200,500))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值