用R语言进行数据分析:向量

R语言对象模型简介

图一 R语言的数据对象类型简介图
在本系列文章中,接下将分别介绍R语言的几种数据对象:向量、矩阵、数据框与列表、其它特殊对象;
请大家在学习R语言的时候永远记住一个概念,R语言所有内容都是对象;
一、向量基本概念
R语言中最为核心的构成之一
? ? ? ?1、向量构成的基本元素为:数值(numeric)、字符(character)、逻辑值(logical)、复数型(complex);
? ? ? ?2、向量不需要定义类型,可直接赋值:

? ? ? ? ? ?1)生成一个空向量;x<-c();

? ? ? ? ? ?2)给向量赋值。x<-c(0,1,2,3);

? ? ? 3、向量的元素下标取值是以1开始,这点请刚开始接触R的同学注意。例如:要前例中取x向量中值为1,则为x[2]

? ? ? 4、如果一个向量中有一个字符,则该向量的类型会变成字符;

? ? ? ? ??R语言

? ? ? ? ?如果逻辑变量与数值在一起,则为转换成数值。TRUE转变成1?and FALSE 转变成?0.

? ? ? ??R语言

2、在R语言中没有单一的整数、单一字符的概念

? ? ? 例如:X<-2;X<-‘a’;R都是当作向量来处理,只是这个向量只包括单一值。
3、给向量各元素命名: names(x)
? ? ?Demo_3<-1:3

? ? ?names(Demo_3) <- c(“a”,”b”,”ab”)

? ??R语言
二、几种特殊向量的生成
1、生成系列seq()

1)seq(length=, from=, to=)

?? Length:指定生成个数
?? From:是指开始生成的点
?? To:截止点
2)如果不指定,则默认条件下:seq(N1,N2,BY=)
?? N1:开始位置
?? N2:截止位置
?? BY=指定间隔
??R语言
2、rep(P,N) 重复生成P值N次
R语言
三、向量运算
1、取子向量
? ?通过下标:

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

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

? ? ? ? ? 取某个/几个元素,利用-:x[-n]

2、向量排序;

? ? ?sort(); 输出排序后的结果;

? ? ?order();输出排序后的各个向量位置;

? ??a<-c(3,9,0,12,19)
? ??sort(a);order();
? ??R语言
3、循环。如果二个向量进行运算过程中,二个向量不相同,则R对长度小的向量自动补充值,直到长度等于大的向量。
例如:
Demo_5<-1:3;
Demo_6<-2:5;
Demo_7= Demo_6+ Demo_5;
??r语言
Demo_5<-1:3;
Demo_6<-2:7;
Demo_7= Demo_6+ Demo_5;

? ?R语言

?(这也是很多人学习R语言的时候很难理解的地方,为什么会有这种机制)
? ? ? ?vectorized operation(向量化运算)

? ? ? 1)、如果有一个是向量,是则结果都是向量形式;

? ? ? 2)、进行向量运算;判断向量是否长度相等,如果长度不相等,则把短向量长度从头开始循环补充值,到与长向量的长度相等(所以二个长度的相关必须是整数倍);

本文出处:,链接:,采用「CC BY-SA 4.0 CN」协议转载学习交流,内容版权归原作者所有,如涉作品、版权和其他问题请联系「我们」处理。

发表评论

登录后才能评论

联系我们

如有建议:>>给我留言

大数据交流群

统  计  学 数据分析网-统计学

商业智能 数据分析网-商业智能

数据挖掘 数据分析-数据挖掘

数据产品 数据分析网-数据产品

QR code