Steem 和 R 语言:跟大鹏学 R 语言(2)简单计算

in #cn6 years ago (edited)

前情回顾:

本文选自《学 R:零基础学习 R 语言》(研究出版社,大鹏、李怡著,2018)第一章。

xuer-cover.jpg

1.2 第一次畅谈:计算

R最简单的功能,是用作计算器。先在左上面板窗口输入以下代码,然后按窗口上方的运行(Run)按钮,或按快捷键 ctrl+回车(这个快捷键会经常用),就会运行光标所在行的整行代码:

3 * (2 + 2)
## [1] 12

上面第一行是输入的代码示例。第二行用两个# 号开头,表示是运行结果,默认显示在RStudio的左下面板。如不另作说明,本书都用这种格式来区分代码和运行结果。我们暂时不管#号后面的[1] 是什么,先来试试R的数学基本运算符:加+, 减-,乘*,除/,乘方 ^,整除的商 %/%,整除的余数%%

练习 1.1 计算365除以7得到的整除商和余数。

下面,我们开个平方。输入并运行

9 ^ 0.5 # 开平方
## [1] 3

或者

sqrt(9)  # 也是开平方
## [1] 3

上面两条语句的作用等同,只是形式不同。这里,sqrt()是开平方的函数,被开方的数必须放在圆括号里,这是 R 语法的基本规则之一。# 号后面一直到这一行的末尾是注释,注释部分不会被运行,这样是为了方便将来理解这句代码的用途。当然,我们可以用注释随便写点什么,比如说 “# 哇塞我的第1行代码太帅了”或者“# 今天心情不大好就写到这儿吧”等等。如果你乐意,那么完全可以在注释里偷偷写一部小说,就像《倚天屠龙记》里有人在《楞伽经》夹缝处写下《九阳真经》一样。

有人读到这里,可能会退缩了:sqrt,开玩笑,我怎么记得住啊!注意 R 入门第一秘诀: 不要被 R 吓住!现在,我们请出我们的第一位人气小助理:tab键。试试只输入 s,然后按 tab 键,就会看到RStudio给出的贴心提示,所有以 s 打头的函数和变量都列在里边了,用鼠标或箭头键选取就行了。在 s 后面接着输入q之后再按tab键试试。这个“tab小助理”我们以后天天时时分分秒秒都会用。

其实,常用的函数就那么几个,用几次就不需要贴心提示了。而且函数名称都很好记,sqrt 就是 square root 的缩写,顺便练了英文。实在记不住,那就用基本运算符来求乘方好了, 9 ^ 0.5 即可。将来学了自定义函数之后,你甚至可以把sqrt改名叫做kaipingfang。我们在后面的学习中,会经常针对同一个问题给出多个解决方案,条条道路通罗马,R很灵活的,随便挑一个你喜欢的方案拿去用就行了。

小贴士 1.1 R 菜鸟入门三大秘诀

第一秘诀:不要害怕!学R非难事,谁都可以R(Anyone can R)。

第二秘诀:能用就行!只要能完成工作,R代码写得漂亮与否并不重要。如果你有两个解决办法,那就选用你熟悉的那个。将来时间有富余的话再试另一个。

第三秘诀:与人分享!如果你的R 代码是一把刀,那么分享就是磨刀,越磨越快。

常用函数都可以顾名思义:四舍五入round(), 截取整数trunc(), 开平方sqrt(),求绝对值abs(),指数函数exp(),自然对数函数 log(),以10为底的对数函数log10(),三角函数 sin()cos()tan()asin()acos()atan()等等。

有些常数在R中已经定义好了,例如圆周率ππ,只要输入pi并运行

pi
## [1] 3.141593

怎么只有这几位有效数字?我上幼儿园时就背下来了,精确度不够高啊。要提高精确度,需要用选项函数option()

options(digits = 22)  # 最大支持 22 位
pi
## [1] 3.1415926535897931

option()函数运行一次后,以后的数字都会是指定的位数,直到重新运行一次,或者退出R。下面我们把位数改为默认值,7位:

options(digits = 7) 
pi
## [1] 3.141593

位数就变回来了。

Sort:  

有点python的感觉!

语言嘛,都差不多

image

交作业,等待第三课。

这是谁留的作业?这节作业是:计算365除以7得到的整除商和余数。

原来这个才是作业。

老师,文字类的R语言是怎么计算的呢?
比如“你好”+“我好”+“大家好”=什么呢?
会等于“你好我好大家好”还是干脆等于0或者3?

这位同学的问题提得很好。这部分内容我们到第 xx 章再讲。

We recommended this post here.

We are Discover Steem, if you like our work consider giving us an upvote. :) If you don't wish to receive recommendations under your posts and to be recommended, reply with STOP.

Coin Marketplace

STEEM 0.20
TRX 0.14
JST 0.030
BTC 67651.30
ETH 3269.44
USDT 1.00
SBD 2.64