今天一晚上学了markdown的语法顺便记录自己学R的东西
为什么学R语言
R是一种用于数据统计分析的编程语言,有着简单易学容易上手的特点,与此同时R有很多包和强大的社区
学习R的途径
一开始看的《R语言实战》,入门十分详细,而且是通过问题入手的。
最近开始看《学习R》和《R for data science》
R的基础知识
向量
创建一个向量很简单
a <- c(1,2,3,4)
这里c是concatenate的第一个字母,意思是“把所有东西连接到一起”。
R是向量化的:R的向量化指的是
- 运算符和函数的向量化
-
计算的向量化
对于第一种,指的是运算符和函数可以作用于每个元素而不用写个循环。
对于第二种,指的是当一个函数把一个向量作为输入的时候,能够汇总计算.
sum(1:5)
15
向量赋值
R中赋值有两种方式
a <- c(1,2,3,4)
a = c(1,2,3,4)
第二种有的时候会报错
特殊数字
R中存在四种特殊数字:Inf、-Inf、NaN、NA
前两者分别是正负无穷,
对于后二者NaN指的是not-a-number意味着计算或没有数学意义,或无法正确执行
而NA是not-available的缩写,代表缺失值,一般情况下计算缺失值结果也会丢失,
> c(Inf + 1, Inf - 1, Inf + Inf)
[1] Inf Inf Inf
> c(Inf + 1, Inf - 1, Inf - Inf)
[1] Inf Inf NaN
> c(NA + 1, NA * 5)
[1] NA NA
逻辑向量
注意逻辑中的TRUE和FALSE不能用来做变量名。
R中有三种向量化的逻辑运算符:
- !代表非操作
- & 代表与操作
- | 代表或操作
> (x <- 1:10 >= 5)
[1] FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE TRUE TRUE
> !x
[1] TRUE TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE FALSE
> (y <- 1:10 %% 2 == 0)
[1] FALSE TRUE FALSE TRUE FALSE TRUE FALSE TRUE FALSE TRUE
> x & y
[1] FALSE FALSE FALSE FALSE FALSE TRUE FALSE TRUE FALSE TRUE
> x | y
[1] FALSE TRUE FALSE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
>
代码皆来自于《学习R》
2019年3月7日于上海