r语言s符号的用法(R语言中这些你想知道含义又不知道怎么查的特殊符号)

特殊符号常用,但不好搜索,收藏起来做个备用,欢迎大家继续补充,我来为大家科普一下关于r语言s符号的用法?下面希望有你要的答案,我们一起来看看吧!

r语言s符号的用法(R语言中这些你想知道含义又不知道怎么查的特殊符号)

r语言s符号的用法

特殊符号常用,但不好搜索,收藏起来做个备用,欢迎大家继续补充。

  • (): 通常用于函数的调用,例如ggplot(data); 或者调整优先级,如1:3 1返回2 3 4,而1:(3 1)返回1 2 3 4。
  • []: 用于索引向量、列表、数据框。
  • [[]]: 用于索引获得列表、数据框的具体值。
  • $: 用于数据框索引某一列。三者的区别,具体见下面例子演示。

aVector <- 1:3 1 aVector[1] ## [1] 2 aList <- list(a=aVector, b=1:(3 1)) aList ## $a ## [1] 2 3 4 ## ## $b ## [1] 1 2 3 4 # 获取列表某个元素 aList['a'] ## $a ## [1] 2 3 4 # 获取列表某个元素的值 aList[['b']] ## [1] 1 2 3 4 aDF <- data.frame(a=1:3,b=2:4) # 列的名字直接写在$后面 aDF$a ## [1] 1 2 3 # 列的名字为变量时使用 aDF[['a']] ## [1] 1 2 3 # 数据框单列会变为向量 aDF[,1] ## [1] 1 2 3 # drop=F数据框单列也保持数据框结构 aDF[,1,drop=F] ## a ## 1 1 ## 2 2 ## 3 3

  • {}: 一般用于界定语句块;如函数定义,if语句和for语句的作用范围等。
  • ::和:::: 通常是如dplyr::filter(包名字::函数名)的方式显示制定调用某个包的某个函数。 别人运行的好好的R代码,到我这怎么就冲突了?
  • %in%: 判断存在与否,见下面例子

1 %in% c(1,2,3) ## [1] TRUE 10 %in% c(1,2,3) ## [1] FALSE

  • ...: 通常用于定义函数时接收额外的参数,传给内部调用的其它函数。
  • =: 单个等号,一般是赋值和传参
  • ==: 判断是否相等
  • !=: 判断是否不等
  • !: 逻辑非
  • |, ||: 逻辑或 (单竖线和双竖线意义不同)
  • &, &&: 逻辑与 (这里的&就不是放在后台运行了~~)

1==1 ## [1] TRUE # 取反 !1==1 ## [1] FALSE 1!=1 ## [1] FALSE # 逻辑与 (1==1) & (1==2) ## [1] FALSE # 逻辑或 (1==1) | (1==2) ## [1] TRUE # 对每对元素计算逻辑或 c(F, T) | c(F, F) ## [1] FALSE TRUE # 只对两侧向量第一个元素进行逻辑或 c(F, T) || c(F, T) ## [1] FALSE # 只对两侧向量第一个元素进行逻辑或 c(F, T) || c(T, F) ## [1] TRUE # 对每对元素计算逻辑与 c(F, T) & c(F, F) ## [1] FALSE FALSE # 只对两侧向量第一个元素进行逻辑与 c(F, T) && c(F, T) ## [1] FALSE # 只对两侧向量第一个元素进行逻辑与 c(F, T) && c(T, F) ## [1] FALSE

  • ~: 用于构建公式;y~x1 x2。
  • ` : 反引号` ` 在R中用于不规则变量名。
  • `?|: 可以查看|`函数的帮助,这也是不规则变量名的一个体现。

# aDF = data.frame(Log2 Fold change=1:3) # Error: unexpected symbol in "aDF = data.frame(Log2 Fold" aDF = data.frame(`Log2 Fold change`=1:3) aDF ## Log2.Fold.change ## 1 1 ## 2 2 ## 3 3 aDF = data.frame(`Log2 Fold change`=1:3, check.names=F) aDF ## Log2 Fold change ## 1 1 ## 2 2 ## 3 3 aDF$`Log2 Fold change` ## [1] 1 2 3

  • !!: 通常配合sym用于需要传入变量的函数中。具体见下面例子。

xvariable_en = sym(xvariable) yvariable_en = sym(yvariable) p <- ggplot(data, aes(!!xvariable_en, !!yvariable_en))

  • %>%: 管道符,上一个函数的输出传递给下一个函数作为输入。来源于magrittr包,同类型的还有%T>%,%$% 和 %<>%,具体查阅相应帮助文档。
,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页