评论R管道的最佳做法%>%

时间:2015-10-27 17:52:14

标签: r dplyr tidyr

用R和dplyr / tidyr编写长管道时,是否有人找到了添加注释的好方法?

我知道函数语法已经非常具有表现力,但有时候多个动作可能会被分组并且#34;我想知道是否最好在多个管道中打破整个事件,并在它们之间发表评论,或者是否有一种方法可以很好地格式化管道中的注释。

2 个答案:

答案 0 :(得分:5)

不是答案,但评论时间太长了 -

我个人只是将我的评论放在管道中的命令之间。例如:

object %>%
  command1 %>%

  #* Comment

  command2 %>%
  command3 %>%

  #* Perhaps a 
  #* Really long
  #* Comment

  command4

对我而言,关键是将您的评论缩进到与其讨论的代码相同的级别,以便我可以看到它是单个块的一部分。

答案 1 :(得分:4)

可替换地:

object %>%
  command1 %>%  #* Comment
  command2 %>%
  command3 %>%   #* Perhaps a 
                 #* Really long
                 #* Comment
  command4

虽然,老实说,我认为这种做法一般都是评论过多,类似于:

# increment x by 1
x <- x + 1

那就是你应该假设任何正在阅读你的代码的人都可以评估代码,并且应该只对更大的想法使用评论。 EG。

# In this section I calculate summaries and cummulative statistics of of X,Y,Z by factors A,B. 
# And then plot them. Note the plots exhibit ...
object %>%
  command1 %>%  
  command2 %>%
  command3 %>%  
  command4

ggplot(...) + geom_bar(...) + facet_grid(...) + theme(...)

如果您确实需要进行大量评论,那么您的代码可能过于复杂而无法进行交互式使用。你应该把它放在一个可推广的函数中,记录函数