R语言学习记录(二)

4、对象改值

4.1、就地改值
比如:

  vec <- c(0,0,0,0,0,0,0)
  vec[1]<-100   #vec向量的第一个值就变为100
  
  ####对于数据框的改值的方法,如下面的例子
  df <- data.frame(face=c("ace","two","six"),suit=c("clubs","clubs","clubs"),values=c(1,2,3))  #创建一个数据框df

4.2、逻辑值取子集

vec[c[FALSE,TRUE,FALSE,TRUE,FALSE,TRUE,FALSE]]
###返回值是 0 0 0  ###返回的是TRUE位置对应的向量的值

4.2.1 逻辑测试

1>2   #返回FALSE
1>c(0,1,2)   ###返回的值是  TRUE  FALSE  FALSE
c(1,2,3)==c(3,2,1)   ###返回的值是 FALSE TRUE FALSE

##%in%  的作用是测试其左边的值是否出现在其右边的对象之中,也是##唯一一个不进行一一对比的运算符。
1  %in%  c(2,3,4)          ### FALSE
c(1,2)  %in% c(3,4,5)   ###FALSE FALSE

还有要注意的就是布尔运算符 和其他的语言)(java 或者c)的运算规则基本是一致的

4.3 缺失信息

R中的特殊信息 NA 代表的是不可用,可以存储缺失信息,
mean(c(NA,1:50),na.rm=TRUE)

5、R的环境系统
5.1 R的作用域规则
(1)R首先在当前的活动环境中搜索对象
(2)在命令行中工作时,活动环境就是全局环境。因此,命令行中的所有调用都发生在全局环境中,当所要搜索的对象不在当前的活动环境中时,R会按照以下的规则进行搜索: 在命令行中调用对象时,首先在全局环境中搜索,如果在全局环境中找不到该对象,R会依次进入该环境的父环境,该父环境的父环境,直到在某个上层环境中找到该对象为止,如果还是没有找到,R会返回一个错误信息。

5.2 R的函数的一些规则
R在每一次的函数求值时都会创建一个新的运行时环境。
print(pi) ###返回值是 3.1415926

原文地址:https://www.cnblogs.com/tongxupeng/p/10259510.html