变量
基本说明
R语言计算的过程中,通常需要使用变量来存放中间结果。变量相当于给定一个空间,只能保存一种数据结构,只保存最后一次被赋值的数据。无需事先声明。
命名规则
变量名应该尽可能简单、意义明确,命名遵循一定规律,以便与他人交流理解。
- 只能使用字母(区分大小写)、数字、下划线“_”和英文句点“.”给变量命名;
- 不能以数字、下划线作为开头;
- 若以句点开头,第二位不能是数字;
变量名 | 有效性 | 原因 |
---|---|---|
var_name1. | 有效 | 符合规则1~3 |
var_name%1. | 无效 | 不符合规则1,即不能包括符号“%” |
1var_name. | 无效 | 不符合规则2,即不能以数字开头 |
_var_name. | 无效 | 不符合规则2,即不能以下划线开头 |
.var_name. | 有效 | 符合规则1~3 |
.1var_name. | 无效 | 不符合规则3,即点开头后不可跟数字 |
# 模拟表格中的6种命名方式,结果可以看出仅有第1、5种符合命名规则
> var_name1.<-1
> var_name1.
[1] 1
> var_name%1.<-1
Error: unexpected input in "var_name%1.<-1"
> 1var_name.<-1
Error: unexpected symbol in "1var_name."
> _var_name.<-1
Error: unexpected symbol in "_var_name."
> .var_name.<-1
> .var_name.
[1] 1
> .1var_name.<-1
Error: unexpected symbol in ".1var_name."
赋值符号
标准语法为左箭头<-
反转赋值为右箭头->
等号=也可以赋值,但是是不标准语法,某些情况下会出现错误。我的理解是等号只能将右边的值赋值给左侧变量,无法进行相反的操作,当左侧为值右侧为变量时会出现问题。
> a<-1
> 2->b
> c=3
> a
[1] 1
> b
[1] 2
> c
[1] 3
# 等号赋值*错误*举例
> 4=d
Error in 4 = d: invalid (do_set) left-hand side to assignment
> rnorm(5) = x
Error in rnorm(5) = x :
target of assignment expands to non-language object
数据类型
R可以处理的数据类型包括数值型、整数型、字符型、逻辑型、复数型和原生型。
分类
数值型
R语言中数字的默认类型为数值型,在运算时需要注意其精度问题。当整数部分大于等于7位时,将舍弃小数部分,当整数部分小于7位时,与小数部分一起最多保留7位数字。
整数型
R语言中整数型需要在整数后加L来表示,如1L、-10L。
字符型
字符串类型,用单引号或双引号包围表示。
逻辑型
TRUE或FALSE。
复数型
R语言支持复数计算。