###################################################

问题:创建、操作向量   18.4.27

怎么创建向量 vector,,及其相关操作 ???

解决方案:

a <- 3; 或 a=3     #单数据变量

a * 2;  sqrt(a);    #单数据变量的简单运算

a2 = seq(1:8); a2   #生成等差序列   #[1]  1  2  3  4  5  6  7  8

vec1 = seq(from=0,to=9,by=2); vec1   ##[1]  0  2  4  6  8

vec2 = rep(vec_1,2); vec2  #生成重复序列 # [1]  0  2  4  6  8 10  0  2  4  6  8 10

vec3 = rep(vec_1,each=2); vec3   ## [1]  0  0  2  2  4  4  6  6  8  8 10 10

vec4 = rep(vec_1,c(1,2,3,3,2,2)); vec4  #[1]  0  2  2  4  4  4  6  6  6  8  8 10 10

link <- c(vec1,100:105,vec1)    #[1]   0   2   4   6   8 100 101 102 103 104 105   0   2   4   6   8

#c()函数可以连接不同的变量,生成一个新的变量。

vec = vector(length=6);  vec   #[1] FALSE FALSE FALSE FALSE FALSE FALSE

# vector 函数生成一个长度为 length 的空向量,元素为FALSE。可逐个赋值。vector 函数可用来代替 c 函数。

#相关操作:

#查询元素

vec1[3];   # 返回索引为 3 的元素

vec1[-3];   # 返回除了索引为 3 的其他所有元素

vec1[2:4];   #返回索引为 2-4 的元素

vec1[c(2,4)];   #返回指定的,索引为 2和4 的元素

vec1[vec1 > 5]   #返回所有值大于5的元素。

vec1[which(vec1 > 5)]   #同上,,返回所有值大于5的元素

vec1[vec1 %in% c(1,2,5,"b")]   #返回一个逻辑向量,长度同vec1,vec1中元素在c(),中则为 TRUE.

length(vec1);   #返回向量长度,可结合上行筛选条件。

#编辑向量

x[x=2] <- 12;   ## 将x的第1个为2的元素 变为12

x[x==2] <- 12;   ## 将 x 中,所有为2的元素 变为12

sum(vec1);    ## sum  min  max  mean  median  var sd 均可以如上应用。

#如果变量中有缺失值,需要添加参数na.rm=TRUE,其默认为FALSE。 计算 sum min max mean median 时,

#而有的内置函数用 na.action=TRUE,处理缺失值。还有用其他句式等,用前help (?)一下

append(v,10,after=3)  #在第三个元素后面加入10,新向量 <- (原向量,新元素) ,添加元素的及合并向量

#如果向量 x 包括名称: x[2]得到名字和值成对输出,x[[2]]只输出值。

which.max(x)  # 找出最大元素的索引

which.min(x)  # 找出大小的元素索引

which(x == 6.0)  # 等于6.0的元素的索引

which(x > 5)  # 大于5的元素的索引

讨论扩展:

向量无横竖之分。

另请参阅:

R: vector 向量的创建、操作等。的更多相关文章

  1. Matlab、R向量与矩阵操作 z

    已有 1849 次阅读 2012-8-2 15:15 |系统分类:科研笔记|关键词:矩阵 480 window border center Matlab.R向量与矩阵操作   描    述 Matla ...

  2. Matlab、R向量与矩阵操作

    Matlab.R向量与矩阵操作   描    述 Matlab R 1 建立行向量v=[1 2  3 4] v=[1 2 3 4] v<-c(1,2,3,4)或v<-scan(),然后输入 ...

  3. c++ vector(向量)使用方法详解(顺序访问vector的多种方式)

    来源:http://www.jb51.net/article/44231.htm 作者: 字体:[增加 减小] 类型:转载 时间:2013-12-08我要评论 vector是向量类型,它可以容纳许多类 ...

  4. vector 向量容器用法祥解

    vector(向量): C++中的一种数据结构,确切的说是一个类.它相当于一个动态的数组,当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间的目的. 用法:         ...

  5. STL --> vector向量

    vector向量 vector是一种对象实体,能够容纳许多其他类型相同的元素,因为又被称为容器. 头文件 在使用它时,需要包含头文件 <vector>. #include <vect ...

  6. vector向量容器(常用的使用方法总结)

    关于STL中vector容器的学习,编译运行后边看代码,边看执行结果效果更佳,还是想说看别人的代码一百遍,不如自己动手写一遍. vector向量容器不但能像数组一样对元素进行随机访问,还能随时在尾部插 ...

  7. 学习笔记之vector向量容器

    今天复习到vector向量容器,里面包括vector向量容器的一些优点以及具体的使用方法及代码,分享给大家. Vector向量容器不但能够像数组一样对元素进行随机访问,还可以在尾部插入元素,是一种简单 ...

  8. R语言文件相关的操作

    1. 文件系统介绍 R语言对文件系统的操作,包括文件操作和目录操作,函数API都定义在base包中. 2. 目录操作 2.1 查看目录 查看当前目录下的子目录. # 启动R程序 ~ R # 当前的目录 ...

  9. vector向量容器

    vector向量容器不但可以像数组一样对元素进行随机访问,还能在尾部插入元素,是一种简单高效的容器,可以代替数组. vector具有内存自动管理的功能,对于元素的插入和删除,可以动态的调整所占内存. ...

随机推荐

  1. [原创]java WEB学习笔记26:MVC案例完整实践(part 7)---修改的设计和实现

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

  2. 20145229吴姗珊 《Java程序设计》第6周学习总结

    20145229吴姗珊 <Java程序设计>第6周学习总结 教材学习内容总结 第十章 输入\输出 1.java将输入\输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象 2.输入串 ...

  3. Docker 单机网络

    Docker Network相关命令 root@ubuntu:~# docker network --help Usage: docker network COMMAND Manage network ...

  4. Linux Shell总结

    Shell编程总结: 1.linux命令 2.位置变量 $0 $1 $# $? 3.条件测试 [ ] [[ ]] (( )) if case 4.循环for while 5.打印echo cat 6. ...

  5. 《python基础教程(第二版)》学习笔记 基础部分(第1章)

    <python基础教程(第二版)>学习笔记 基础部分(第1章)python常用的IDE:Windows: IDLE(gui), Eclipse+PyDev; Python(command ...

  6. JavaScript中call、apply个人理解

    JavaScript中call.apply个人理解 一句话即通俗的说:call.apply 是为了改变this的状态而存在的 }; } function personInfo(name,age){ t ...

  7. jQuery-选择器(2)

    jQuery选择器(2) 继续学习jquery选择器,感受它对于操作DOM节点的方便. [属性筛选选择器]属性选择器可以让你基于属性来定位一个元素.可以只指定该元素的某属性,这样所有使用该属性而不管它 ...

  8. cpu满问题分析

    功能问题,通过日志,单步调试相对比较好定位. 性能问题,例如线上服务器CPU100%,如何找到相关服务,如何定位问题代码,更考验技术人的功底. 做为开发人员,肯定会遇到这类问题,介绍一下分析CPU 1 ...

  9. Netty5.x中新增和值得注意的点(转载http://www.coderli.com/netty-5-new-and-noteworthy/)

    该文档会列出在Netty新版本中值得注意变化和新特性列表.帮助你的应用更好的适应新的版本.   不像Netty3.x和4.x之间的变化,5.x没有那么大的变化,不过也取得了其简化设计中的一些突破性进展 ...

  10. BEC listen and translation exercise 44

    But over the past 70 years or so, there's been a massive increase in one type of crime which was wha ...