相关疑难解决方法(0)

R中的编码实践:不同风格的优缺点是什么?

最近关于使用require与::的问题引发了关于在R中编程时使用哪种编程风格的问题,以及它们的优点/缺点.浏览源代码或在网上浏览,您会看到许多不同的样式显示.

我的代码中的主要趋势:

  • 重度矢量化我使用索引(和嵌套索引)玩了很多,这有时会产生相当模糊的代码,但通常比其他解决方案快得多.例如:x[x < 5] <- 0而不是x <- ifelse(x < 5, x, 0)

  • 我倾向于嵌套函数以避免使用我需要清理的临时对象来重载内存.特别是对于操纵大型数据集的函数,这可能是一个真正的负担.例如:y <- cbind(x,as.numeric(factor(x)))而不是y <- as.numeric(factor(x)) ; z <- cbind(x,y)

  • 我编写了很多自定义函数,即使我只在例如一次使用代码.一个sapply.我相信它可以让它更容易阅读,而不会产生可以保持躺着的物体.

  • 不惜一切代价避免循环,因为我认为矢量化更清洁(更快)

然而,我注意到对此的看法不同,有些人倾向于背弃他们所谓的"Perl"编程方式(甚至是"Lisp",所有这些括号都在我的代码中飞来飞去.我不知道虽然走得那么远.

您认为R中的良好编码实践是什么?

您的编程风格是什么,您如何看待它的优缺点?

coding-style r vectorization

34
推荐指数
3
解决办法
4430
查看次数

Emacs模式/函数,用于包含操作符的空格

我记得,有Emacs的模式,抑或是一种选择,可以不记得,通过像运营商后放置空间美化代码,,.=带空格,和其他一些冷却的东西,我不记得了.

我认为这是特定于语言的问题,但我通常在逗号之后放置空格,并=用空格包装.关于这种模式的任何想法?

emacs coding-style

5
推荐指数
1
解决办法
481
查看次数

标签 统计

coding-style ×2

emacs ×1

r ×1

vectorization ×1