本节书摘来自异步社区《R语言初学指南》一书中的第1章,第1.2节,作者【美】Brian Dennis(布莱恩·丹尼斯),更多章节内容可以访问云栖社区“异步社区”公众号查看

1.2 向量

R语言初学指南
R可以处理“一整串”的数字。例如:

> x=c(3,−2,4,7,5,−1,0)
> y=4
> x+y
[1] 7 2 8 11 9 3 4

上面第一行中的命令c()用来将3,−2,4,7,5,−1和0“合并”成一个列表,将该列表命名为x。在R中,由数字组成的列表有一个专门术语:向量。在这里,x是一个由7个元素组成的向量,y的值是4。表达式x+y的意思是把x中的每一个元素都加4。不过,如果y和x一样,都是向量,那么会出现什么情况呢?

> y=c(1,2,3,4,5,6,7)
> z=x+y
> z
[1] 4 0 7 11 10 5 7

这里x+y代表,x的元素与y中对应的元素分别相加!

回忆一下四年级时,老师曾给出一些大数字相乘的题目作为家庭作业:


把上面一排数字和下面一排数字各自看成一个向量,分别命名为“top”和“bot”。然后,把两个向量相乘:

> top=c(75634,2339,103458,48761,628003)
> bot=c(567,138,974,856,402)
> top*bot
[1] 42884478  322782  100768092  41739416  252457206

这里有几个地方需要注意:(1)在写R语句时,不要用逗号把比较大的数按照三位一组的方式隔开。逗号在R中有其他的用处,比如,在命令c()中,需用逗号把不同的数分开;(2)要按照同样的顺序,把两组数分别输入到两个向量中;(3)数之间可有空格,但必须要用逗号把数隔开;(4)不要把这个告诉四年级的小朋友。

在R中,所有的算术运算都可以用在向量上,比如,加减运算、乘除运算,甚至包括乘方运算。像刚才看到的那样,如果对一个数和一个向量进行运算,那么这个数会作用在向量的每个元素上;如果对两个长度相同的向量进行运算,则两个向量中对应的元素会分别进行运算。

向量运算的优先级与算术运算一样,并且也可用括号来确定哪些运算需要优先进行:

> ted=c(1,2,3)
> kat=c(−1,1,.5)
> 2*(ted+kat)
[1] 0 6 7
> 2*ted+kat
[1] 1 5 6.5

如果在输入指令时出现错误,只要再重新输入一遍正确的指令即可。R会计算并保存最终输入的版本。同时,如果一行指令太长,可在任意一个明显不完整的R命令(R是很智能的!)处敲击回车键,这时,R会出现一个像加号一样的提示符,在这个提示符处继续输入命令,输入完后敲击回车键就可以了:

> kat=c(−1,1,
+ .5)
> kat
[1] −1.0 1.0 0.5

可用下面的冒号“:”来建立一个特殊的向量:

> j=0:10
> j[1] 0 1 2 3 4 5 6 7 8 9 10

这里的j是向量,其元素是0~10的整数。也可用同样的方式来定义包含负数的向量:

> k=5:−5
> k[1] 5 4 3 2 1 0 −1 −2 −3 −4 −5

想知道2的0次方到20次方分别是多少吗?这样做:

> j=0:20
> 2^j
[1]  1    2    4     8    16    32   64    128
[9]  256   512   1024   2048   4096  8192  16384  32768
[17] 65536  131072 262144  524288  1048576

此时读者可能已经注意到:用R的语法可以非常清晰地描述数学问题,这样就可毫无障碍地用即时消息或是短信来跟其他人讨论数学问题。

R:嗨,忙什么呢?

S:做数学作业呢,唉。

R:是啊,好愁人啊,我忘了求二次方程的方法了。

S:是这样的。

S:ax^2+bx+c=0。

S:当 b^2-4ac>0 时,存在两个解。

S:(-b+sqrt(b^2-4ac))/(2*a);

S:(-b-sqrt(b^2-4ac))/(2*a)。

R:谢谢啦!你在用R做作业吗?

S:当然啦!若用计算器需多花一倍的时间啊。

R:那等你做完了,一起去咖啡店吧。

S:好的!马上就做完了,用R就是方便。

S和R这两个人都是有经验的R使用者,他们知道sqrt()是用来求解括号中的平方根。在第3章中,还会介绍该函数和其他一些函数的使用方法。

《R语言初学指南》一1.2 向量相关推荐

  1. 《R语言初学指南》一2.3 找到R脚本中的错误

    本节书摘来自异步社区<R语言初学指南>一书中的第2章,第2.3节,作者[美]Brian Dennis(布莱恩·丹尼斯),更多章节内容可以访问云栖社区"异步社区"公众号查 ...

  2. 《R语言初学指南》一2.8 参考文献

    本节书摘来自异步社区<R语言初学指南>一书中的第2章,第2.8节,作者[美]Brian Dennis(布莱恩·丹尼斯),更多章节内容可以访问云栖社区"异步社区"公众号查 ...

  3. python调用r语言加载包错误_Python中调用R语言包指南.docx

    Python中调用R语言包指南R语言是非常强大的做统计分析和建模方面的开源软件,它有非常丰富的统计软件包,做统计可以说只有你想不到的,没有R办不到的.Python又是当下最流行的编程软件之一,Pyth ...

  4. R语言scan函数读取文件为向量或者列表格式实战

    R语言scan函数读取文件为向量或者列表格式实战 目录 R语言scan函数读取文件为向量或者列表格式实战 #基本语法

  5. R语言dplyr包near函数查看向量对应元素是否相同或者相近实战

    R语言dplyr包near函数查看向量对应元素是否相同或者相近实战 目录 R语言dplyr包near函数查看向量对应元素是否相同或者相近实战

  6. vector 赋值_从零开始学习R语言(一)——数据结构之“向量”(Vector)

    本文首发于知乎专栏:https://zhuanlan.zhihu.com/p/59688569 也同步更新于我的个人博客:https://www.cnblogs.com/nickwu/p/125370 ...

  7. R语言使用na.omit函数删除向量数据中的缺失值(NA值)

    R语言使用na.omit函数删除向量数据中的缺失值(NA值) 目录 R语言使用na.omit函数删除向量数据中的缺失值(NA值) R 语言特点 R语言使用na.omit函数删除向量数据中的缺失值(NA ...

  8. R语言使用rev函数对日期向量数据进行反序处理(逆序处理、reverse)

    R语言使用rev函数对日期向量数据进行反序处理(逆序处理.reverse) 目录 R语言使用rev函数对日期向量数据进行反序处理(逆序处理.reverse) R 语言特点 R语言使用rev函数对日期向 ...

  9. R语言笔记1:数据类型(向量、数组、矩阵、 列表和数据框)

    宏基因组按:科研中数据分析解读占用了我们太多时间,学习R语言是生物测序领域数据(reads count表)分析及可视化的首选.举个例子,扩增子分析从fastq到OTU表至多是de novo或refer ...

  10. R语言plyr包round_any函数将向量数据近似到任意精度实战

    R语言plyr包round_any函数向量将数据近似到任意精度实战 目录 R语言plyr包round_any函数向量将数据近似到任意精度实战 #导入plyr包 #仿真数据

最新文章

  1. Python的random
  2. 08 redis数据类型:hash
  3. ROS修改pkg名和node名教程
  4. 流程型企业SCM、ERP、MES、PCS如何集成?
  5. Java SE 疑难点记录
  6. IE9预览版已全面支持HTML5标准
  7. mysql replace
  8. Broadcast variabies-广播变量
  9. 浅谈人工智能(AI)
  10. 企业报表系统搭建很难?其实选对工具就成功了一半
  11. MySQL 5.7详细下载安装配置教程
  12. 带log的计算器html代码,lg计算器(log计算器在线)
  13. el-progress入门学习
  14. 通用输入/输出接口 GPIO
  15. 游侠联机服务器没有响应,求助,游戏联机出现错误 - 《生存之旅2》 - 3DMGAME论坛 - Powered by Discuz!...
  16. SUST OJ P5502
  17. 北大心理与认知学院院长方方:人类注意力图和动态机制
  18. 分形之Julia集和Mandelbrot集及浅谈分形理论的应用
  19. Spark Streaming源码阅读(0)楔子
  20. 学校计算机 病毒,关于近日大量学校电脑感染勒索病毒的说明及应对办法

热门文章

  1. python程序狮_Python编程狮
  2. 线程池(python)
  3. Pycharm2018 汉化
  4. java给图片增加水印(图片水印,文字水印)
  5. 安卓俄罗斯方块java解释_Android实现俄罗斯方块
  6. UE4官方插件下载地址,完全免费
  7. avast! 5 简体中文正式版 官方直接下载链接
  8. delphi7 安装 indy10.2.3
  9. 深入浅出设计模式---3、代理模式和工厂模式
  10. 计算机中硬盘驱动器安装在哪里,解决方法:在笔记本电脑中安装硬盘驱动器的步骤如何在笔记本电脑中安装硬盘驱动器...