变量
常量是内存中用于保存固定值的单元,比如1,字母abd,是无法更改的;而变量相当于一个代号,我们可以把数字、表、字符串甚至是图片存储在变量里,反复使用,更改,删除。先操作一下以下的代码。
创建变量a,通过<-或=赋值,具体区别下文会提到
> a <- 1
查看变量a的值
> a
[1] 1
更改变量a的值,只需要重新赋值就会覆盖原有的值
> a <- 3
> a
[1] 3
查看工作空间有哪些变量,发现有了变量a
> ls()
[1] "a" "al" "b" "e1" "f" "pts"
删除变量 a
> rm(a)
> ls()
[1] "al" "b" "e1" "f" "pts"
数据类型
数据为什么要分类?因为不同类型的数据需要的处理方式不同所以分类,就像处理图片用Photoshop,处理文字用word是一个道理。因而在R语言中也规定了不同的数据类型和其对应的处理方法:
numeric(数值型)
创建数字向量,查看数据类型
> x<-3
> class(x)
[1] "numeric"
把其他数据类型转变为数字
> as.numeric(c(2,3.6,"3","vb"))
[1] 2.0 3.6 3.0 NA
Warning message:
NAs introduced by coercion
#'vb'无法转变为数字,返回NA
格式化数字
> n <- c(2.3,4.243573422,12345)
> format(n,digits = 3,flag='+',big.mark = ',',small.mark = ' ',scientific = FALSE)
[1] " 2.30" " 4.24" "12,345.00"
# digits 小数点后的位数 ,flag 前缀 ,big.mark 在小数点前部分的分隔符号,small.mark在小数点后面部分的分隔符号,scientific 是否采用科学计数
Logical(逻辑型)
我看到很多教程上都写逻辑值包括TRUE、FALSE,大多数遗漏了NA。正式声明:逻辑型数据包括TRUE、FALSE、NA,记住世界不止有对和错!
NA
NA(not available)是缺失值,NA进行任何运算的结果都为NA。一个大家经常困惑的问题就是,NA和NULL有什么区别?通过一小段代码大家感受一下。
> x <-c(NA,NA,NA); x
[1] NA NA NA
> length(x)
[1] 3
> x <- c(NULL,NULL,NULL);x
NULL
>length(x)
[1] 0
length函数表示求向量的长度,从上面的代码可以看出NA好歹还占了一个位置,而NULL简直是空无一物。
逻辑运算符
参见下面的表格
逻辑运算符 | 描述 |
---|---|
& | 和运算,都为真结果才是真 |
| | 或运算,一个为真即为真 |
! | 非运算,给出相反的逻辑值 |
本文为原创作品,转载请标明出处
网友评论