R语言|数据结构(一) 向量 ———R语言入门到入土系列(二)

在R语言里的数据可分为向量、矩阵、数组、数据框、列表;其中我们在数据分析中常用是数据框和列表。他们主要的形式如下图所示:
在这里插入图片描述

向量创建

以创建数值型、逻辑型和字符型向量为例,常见的向量的创建方法有如下几种:

一、直接创建

x_1 <- 1:9  
x_2 <- TRUE
x_3 <- 'hello'

在这里插入图片描述

二、c()函数创建 [常用的创建方式]

x_1 <- c(1,4,7,8,5,5,3)
x_2 <- c('hello','world')
x_3 <- c(TRUE,TRUE,F,F)

在这里插入图片描述

三、seq()函数创建

seq()函数详解:

seq(from = 1, to = 1, by = ((to - from)/(length.out - 1)),
length.out = NULL, along.with = NULL, …)

参数解释:
from : 向量的起始数字
to : 向量的结束数字
by : 步长,两相邻元素之间的差值
length.out : 向量的长度,元素的个数
along.with : 从这个参数的长度中取长度

x_1 <- seq(1,9,by = 2) # 1 3 5 7 9 
x_2 <- seq(1,by = 2,length.out = 5) # 1 3 5 7 9

四、rep() 函数创建

rep(x, …)
rep.int(x, times)
rep_len(x, length.out)

参数解释:
x : 重复的对象
each : x的每一个元素重复的次数
times :x整体重复的次数
length.out : 输出的长度,元素的个数

x_1 <- rep(1:2,3)  #1 2 1 2 1 2
x_2 <- rep(c(1,2),c(1,2))  #1 2 2
x_3 <- rep(c(1,2),each=2)  #1 1 2 2 
x_4 <- rep(c(1,2),each=2,length.out = 3) #1 1 2
x_5 <- rep(c(1,2),each=2,times = 3) #1 1 2 2 1 1 2 2 1 1 2 2

向量元素的索引

下角标索引

R语言的索引下角标从1开始,不存在0的索引。

x_1 <- c(1,1,2,2,3,3) 

x_1[3]  # 2
x_1[1:3]  # 1 1 2

逻辑值索引

在使用逻辑值索引时,TRUE代表保留元素,FALSE代表不保留。

x_1 <- c(1,1,2,2,3,3)
suoyin <- c(T,F,F,T,T,T)

x_1[suoyin]  # 1 2 3 3

名字索引

在使用名字索引时必须保证元素有对应的名字。

x_1 <- c(1,1,2,2,3,3)
names(x_1) <- c('one','two','three','four','five','six')

x_1[c('four','six')]  # 2 3

which索引

使用which函数计算出的是元素对应的下角标

x_1 <- c(1,1,2,2,3,3)

which(x_1==1)  # 1 2 
x_1[which(x_1==1)]  # 1 1

which(x_1>1 & x_1<3)  # 3 4
x_1[which(x_1>1 & x_1<3)]  # 2 2

向量的增加

c()函数的增加

与创建向量的方法一样。

x_1 <- c(1,1,2,2,3,3)

x_2 <- c(x_1,c(4,5))  # 1 1 2 2 3 3 4 5

append()函数的使用

append(x, values, after = length(x))

参数解释:
x : 要添加值得对象
values :添加的值
after :在此位置之后添加数值

x_1 <- c(1,1,2,2,3,3)

x_2 <- append(x_1,c(4,5))  # 1 1 2 2 3 3 4 5
x_3 <- append(x_1,8,2)  # 1 1 8 2 2 3 3

向量元素的删除

向量元素的删除时使用减号。

x_1 <- c(1,1,2,2,3,3)

x_1[-1]  # 1 2 2 3 3
x_1[-c(1:3)]  # 2 3 3

向量的排序

sort() 函数的使用

sort(x, decreasing = FALSE, na.last = NA, …)

参数解释:
x :排序对象
decreasing :排序的方式,FALSE代表正序,TRUE代表倒序,默认为F
na.last : 空值的处理,如果为真,则将数据中缺失的值放在最后,如果为 假,则将它们放在前面,如果为NA,则将它们删除

通过计算元素之间的大小,进行排序。

x_1 <- c(1,5,6,7,9,4,3,2,8)

sort(x_1,decreasing = F) #1 2 3 4 5 6 7 8 9
sort(x_1,decreasing = T) #9 8 7 6 5 4 3 2 1

rev() 函数的使用

将向量中的元素顺序颠倒,不加以任何计算。

x_1 <- c(1,5,6,7,9,4,3,2,8)

rev(x_1) #8 2 3 4 9 7 6 5 1
发布了16 篇原创文章 · 获赞 17 · 访问量 4109

猜你喜欢

转载自blog.csdn.net/weixin_42873544/article/details/104793881