當寫長輸送管線用R和dplyr/tidyr,已經有人找到了一個很好的方式來添加註釋?最佳做法建議R管道%>%
我知道函數的語法已經非常有表現力,但有時候可能會將多個操作「分組」在一起,我想知道是否更好地在多個流水線中打破它們之間的註釋或者如果有方法以很好地格式化管道內的評論。
當寫長輸送管線用R和dplyr/tidyr,已經有人找到了一個很好的方式來添加註釋?最佳做法建議R管道%>%
我知道函數的語法已經非常有表現力,但有時候可能會將多個操作「分組」在一起,我想知道是否更好地在多個流水線中打破它們之間的註釋或者如果有方法以很好地格式化管道內的評論。
不是一個真正的答案,但太長了comment--
我個人只是把我的意見在命令之間的管道。例如:
object %>%
command1 %>%
#* Comment
command2 %>%
command3 %>%
#* Perhaps a
#* Really long
#* Comment
command4
的關鍵,對我來說,是縮進到相同的水平,因爲它討論了,這樣我可以想像,這是一個單塊的一部分的代碼,您的評論。
或者:
object %>%
command1 %>% #* Comment
command2 %>%
command3 %>% #* Perhaps a
#* Really long
#* Comment
command4
不過,說實話,我覺得這種做法一般是過多的評論,是類似於:
# increment x by 1
x <- x + 1
那是你應該假設任何人在讀你的代碼可以評估代碼,並且只能真正使用評論來獲取更大的想法。例如。
# 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(...)
如果您確實需要做實質性評論,那麼您的代碼對於交互式使用可能過於複雜。你也許應該把它變成一個普遍化的功能和文檔功能。
愚蠢的是,只要線條用'%>%'結束,我們可以在下一個功能之前添加儘可能多的換行符和'#'... – xav
這不是真正的主題對於SO,因爲它主要吸引dplyr集團的基於意見的答案。 –