R语言中向量的定义以及基本操作

Python016

R语言中向量的定义以及基本操作,第1张

向量是用于存储数值型、字符型或逻辑型数据的一维数组。向量只可以包含一种数据。在R中创建和操作向量很简便,下面的例子显示了如何用函数c() 或者冒号运算符来建立向量以及如何查询、修改、截取一部分向量。

在控制台中键入下列命令建立一个元素为字符串的向量并查询首元素:

键入下列命令建立一个元素为1、2、3、4、5的向量并计算向量元素之和:

创建一个新向量,元素包括2、4、6、8、10,并对其进行相关操作

如果想要初始化一个向量然后再添加内容,可以用vector()函数,vector()函数默认创建逻辑型向量。可以用mode参数指定向量类型。如果不知道向量中元素的个数,可以将个数设置为0,然后再将数据添加到向量末尾。

创建一个长度为3的逻辑型向量,未赋值元素默认为FALSE:

创建一个长度为3的数值型向量,查看元素类型并将3.1赋值于第二个元素:

20200505·Kony·Win10

变量(various) :用于存储值保留的内存位置,变量被分配了R对象,并且R对象的数据类型成为变量的数据类型。

R对象类型(Types of R-objects):

转换数据类型

判断转换类型转换函数

is.numeric() as.numeric() #数字

is.character()as.character()#字符

is.vector() as.vector() #向量

is.matrix() as.matrix() #矩阵

is.data.frame() as.data.frame() #数据框

is.factor() as.factor() #因子

is.logical() as.logical()#逻辑数据

以上每一行的两个函数都是定义相同类型的函数

?不是很懂raw

向量 的下标是从1开始的

取某个元素:x[2](如果X包括名称,注意:x[2]与x[[2]]的区别;

取某中几个:x[c(1,2,0)]

取某个/几个元素,利用-:x[-n]#取除去第n个元素之外的其他元素

sort()输出排序后的结果;order();输出排序后的各个向量位置,如下所示:

x[n] 第n个元素

x[-n] 除了第n个元素的x

x[1:n] 前n个元素

x[-(1:n)] 第n+1至最后的元素

x[c(1,4,2) ] 指定元素

x["name"] 名为"name"的元素

x[x >3] 所有大于3的元素

x[x >3 &x <5] 区间(3,5)的元素

x[x %in% c ("a","and","the")] 给定组中的元素

data >20 是一个表示式,它的返回值是一个有TRUE和FALSE 构成的逻辑向量,最终只选取了TRUE对应的元素,所以data 中大于20的元素被选了出来。

%in%这个操作符只返回逻辑向量TRUE 或者FALSE,而且返回值应该与%in%这个操作符前面的向量程度相等。也就是说它相当于遍历了C里面的一个个元素,判断它们是否在B中出现过,然后返回是或者否即可。

而match(C,B)的结果就很不一样了,它的返回结果同样与前面的向量等长,但是它并非返回逻辑向量,而是遍历了C里面的一个个元素,判断它们是否在B中出现过,如果出现就返回在B中的索引号,如果没有出现,就返回NA。

笔记参考:R语言基础--数据类型之向量 https://www.jianshu.com/p/7b47a6bbb7a9