相关疑难解决方法(0)

333
推荐指数
9
解决办法
15万
查看次数

在R中命名变量的首选样式是什么?

在R代码中,您喜欢命名变量和函数的约定?

据我所知,有几种不同的惯例,所有这些惯例都在喧嚣的和谐中共存:

1.期间分隔符的使用,例如

  stock.prices <- c(12.01, 10.12)
  col.names    <- c('symbol','price')
Run Code Online (Sandbox Code Playgroud)

优点: 在R社区中具有历史优先权,在整个R核心中普遍存在,并且由Google的R风格指南推荐.

缺点: 充满了面向对象的内涵,让R新手感到困惑

2.使用下划线

  stock_prices <- c(12.01, 10.12)
  col_names    <- c('symbol','price')
Run Code Online (Sandbox Code Playgroud)

优点: 许多编程语言中的常见惯例; 受到Hadley Wickham风格指南的青睐,并在ggplot2和plyr包中使用.

缺点: R程序员历史上没有使用过; 令人烦恼地映射到Emacs-Speaks-Statistics中的'< - '运算符(可以用'ess-toggle-underscore'改编).

3.混合资本化的使用(camelCase)

  stockPrices <- c(12.01, 10.12)
  colNames    <- c('symbol','price')
Run Code Online (Sandbox Code Playgroud)

优点:似乎在多个语言社区得到广泛采用.

缺点:有最近的先例,但没有历史使用(在R基础或其文档中).

最后,好像它没有足够的混淆,我应该指出谷歌风格指南争论变量的点符号,但函数的混合大写.

R包中缺乏一致的样式在几个层面上存在问题.从开发人员的角度来看,它使维护和扩展其他代码变得困难(尤其是其风格与您自己的风格不一致).从R用户的角度来看,不一致的语法通过将概念表达的方式相乘来加深R的学习曲线(例如,日期转换函数asDate(),as.date()或as_date()?不,它就是.日期()).

coding-style r naming-conventions

107
推荐指数
4
解决办法
2万
查看次数

如何在R中将not.camel.case转换为CamelCase

在R中,我想转换

t1 <- c('this.text', 'next.text')
"this.text" "next.text"
Run Code Online (Sandbox Code Playgroud)

'ThisText' 'NextText'
Run Code Online (Sandbox Code Playgroud)

我试过了

gsub('\\..', '', t1)
Run Code Online (Sandbox Code Playgroud)

但这给了我

"thisext" "nextext"
Run Code Online (Sandbox Code Playgroud)

因为在这段时间之后它不会取代这封信.

可能真的很容易,但我无法解决.

camelcasing r

23
推荐指数
6
解决办法
5389
查看次数