r 使用 # 作为注释,使用单引号或者双引号作为多行注释,这跟 Python 一样
# 这是 R 语言的 hello world
myString <- "hello world"
print(myString)
"
hello world
"
- () 括号
- ^ 乘方
- %% 求余
- %/% 整除
- * 乘
- / 除
- + 加
- - 减
r 中的整除和 Python 不一样,如果是负数的情况下 Python 中会返回更小的整数,而 R 中会返回大的整数,比如 Python 中,-7 // 3 = -3,而 R 中 -7 %/% 3 = -2
a = 2 %/% 7 # 0
b = 2 %% 7 # 2
cat(a,b)
- >
- <
- ==
- !=
- >=
- <=
& 和 |:
“&” 表示逻辑与。当两个条件都为真时,整个表达式为真。例如,(a > 5 & b < 10) 表示变量 a 大于 5 并且变量 b 小于 10。 “|” 表示逻辑或。当两个条件中至少有一个为真时,整个表达式为真。例如,(a > 5 | b < 10) 表示变量 a 大于 5 或者变量 b 小于 10。
!
“!” 表示逻辑非。它将一个逻辑表达式的结果取反。例如,!(a > 5) 表示当变量 a 不大于 5 时为真。
&& 和 ||:
“&&” 和 “||” 也分别表示逻辑与和逻辑或,但与 “&” 和 “|” 有所不同。“&&” 和 “||” 通常用于条件语句中,并且只对其两侧的第一个元素进行运算。如果第一个元素已经能够确定整个表达式的结果,就不会再对第二个元素进行运算。而 “&” 和 “|” 会对所有的元素进行运算。例如,a && b,如果 a 为假,则不会再判断 b 的值,整个表达式就为假。同样,a || b,如果 a 为真,则不会再判断 b 的值,整个表达式就为真。
- :用于创建一系列数字的向量
- %in% 判断一个元素是否在向量中
- %*% 矩阵乘法
- sqrt() 平方根
- log(m,n) 以 n 为底数对 m 进行取对数
- exp() 底数为 e 的指数
- log10(m) 以 10 为底数对 m 进行取对数
- round() 四舍五入
- ceiling() 向上取整
- floor() 向下取整
使用函数 c() 创建向量
a = c(2,3,5) # 创建一个向量
print(a[1]) # 2 ; r 语言从 1 开始 !!!!
向量就基本等于一个一维数组
一个可以存放不同类型的一维数组 a = list(1,2,3) 也可以使用 c() 创建
二维数组
a = matrix(1:9,nrow = 3,ncol = 3)
- data 向量,矩阵的数据
- nrow 行数
- ncol 列数
- byrow 逻辑值,为 FALSE 按列排列,为 TRUE 按行排列
- dimname 设置行和列的名称
rownames = c("row1", "row2", "row3", "row4")
colnames = c("col1", "col2", "col3")
P <- matrix(c(3:14), nrow = 4, byrow = TRUE, dimnames = list(rownames, colnames))
多维数组
x = c("男", "女", "男", "男", "女")
sex = factor(x)
print(sex)
print(is.factor(sex))
table = data.frame(
姓名 = c("张三", "李四"),
工号 = c("001","002"),
月薪 = c(1000, 2000)
)
print(table) # 查看 table 数据
if () {
}else if (){
}else {
}
- repeat:等于 go 中的 for {} 用法
- while:等于 go 中的 for 条件 {} 用法
- for:等于 go 中的 for range
# repeat
repeat {
if (xx){
break
}
}
# while
while (xx > 0){
xx --
}
# for
for (i in 1:10){
print(i)
}
等于 go 中的 continue
等于 go 中的 break
age = function(x,y) {
return x+y
}
r 使用单引号或者双引号作为字符串