命名规则:
可用名称 | 不可用名称 |
a | 1trial |
.day |
!day |
2day_name | day_name% |
day.name .day_name |
.2day_name |
day_name | _day_name |
变量的价值是我们需要将数据放在一个容器里面,就比如数据一个文件格式放在计算机当中,这个文件就是为了方便我们来使用数据的,文件名就可以帮助我们调用数据。
如何放置到数据当中?采用赋值语句。
name <- 1
这里name就是1,假如我们要放入一组数据。例如1到6
a <- 1:6
print(a)
[1] 1 2 3 4 5 6
这里冒号:表示区间取值,就是返回一个向量,1到 6这个一维数组。我们将这个一维数组放到a变量当中,也可以称作a为对象(Object)。
print()帮助我们在屏幕中显示变量中放置的内容。也可以叫做用于输出的函数。
上面提到函数,函数主要用于完成运算的,不需要我们在进行复杂的程序编写实现运算。先了解运算中最基本的四则运算。示例如下:
5 ^ 5 + (2.3 - 1.125) * 2.5 / 1.1 - 1.12E2
[1] 3015.67
运算结果3015.67,加减乘除+,-,*,/ 最常用的,还有乘方^运算,1.12E2表示科学记数法,即1.12乘以10的2次方。在进行矩阵乘法时,R并非始终遵循矩阵乘法规则。
a * a
[1] 1 4 9 16 25 36
a * 2
[1] 2 4 6 8 10 12
a * 1:2
[1] 1 4 3 8 5 12
不予不等长的向量相乘,R会从夫较短向量进行运算。假如想运用矩阵乘法时,可以使用%*%实现内乘法,运用%o%实现外乘法。
a %*% a
[,1]
[1,] 91
> a %o% a
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 1 2 3 4 5 6
[2,] 2 4 6 8 10 12
[3,] 3 6 9 12 15 18
[4,] 4 8 12 16 20 24
[5,] 5 10 15 20 25 30
[6,] 6 12 18 24 30 36
函数,实现复杂任务,无需我们考虑中间计算过程,只需要知道函数名就可以实现计算任务。例如round函数实现四舍五入,factorial函数实现阶乘操作,函数由函数名、括号和括号中的参数组成,参数可以是原始数据、对象或另一些函数。
round(3.1415)
[1] 3
round(3.1415,2) #后面2表示四舍五入到两位小数
[1] 3.14
floor(3.1415) #表示把3.1415向下取整
[1] 3
floor(-3.1415)
[1] -4
ceiling(3.1415) #表示把3.1415向上取整
[1] 4
ceiling(-3.1415)
[1] -3
cat()函数可以进行字符串拼接,但在拼接元素间自动加上空格。还可以直接输出结果到文件内。如果想在文件中重复写入,就需要添加append参数,否则会清除文件原有内容重新写入。
cat(3.14,"*","R","平方","=","圆面积")
3.14 * R 平方 = 圆面积
# 不会产生结果,会将文件写入r_test.txt文件,如果文件不存在会报错
cat("圆面积等于Π乘以圆半径的平方", file="/Users/luoxiang/r_test.txt")
# 将在上述文本后追加文字,如果没有append参数,清除内容,只显示“时间煮雨,岁月逢花”
cat("时间煮雨,岁月逢花", file="/Users/luoxiang/r_test.txt", append=TRUE)
3.2 数学运算函数
常用平方根、指数、对数函数
# 平方根
sqrt(16)
[1] 4
# 指数
exp(1)
[1] 2.718282
# 对数
log10(100)
[1] 2
log2(4)
[1] 2
常用三角函数
pi
[1] 3.141593
#圆周率pi,正弦sin, 余弦cos, 正切tan, 自变量单位为弧度。
sin(pi/4)
[1] 0.7071068
sin(pi/6)
[1] 0.5
cos(pi/6)
[1] 0.8660254
tan(pi/6)
[1] 0.5773503
#反正弦asin, 反余弦acos, 反正切atan, 结果单位为弧度。
asin(0.5)
[1] 0.5235988
acos(sqrt(3)/2)
[1] 0.5235988
atan(sqrt(3)/3)
[1] 0.5235988
函数还有很多,在实际运用中要根据处理数据内容,选择参数,和嵌套的函数,要灵活运用。