1.賦值
賦值符號選擇:<-
2. 命名
- 常量: 類似函數名以k開頭 e.g. : kConstantName
- 函數: 首字母大寫
- 變量命名: 小寫字母 下划線
3. 語法
-
單行長度:不要超過80個字符
-
縮進:用兩個空格進行縮進,避免使用Tab鍵,或者混用
-
字符間隔:不加空格
-
花括號:前括號不需要獨占一行,后括號則應當獨占一行
另起一行寫代碼主體
else語句要與花括號同行
e.g. : if (condition) {
one or more lines
} else {
one or more lines
}
4. 代碼組織
-
總體布局與順序
如果所有人都以相同順序安排代碼內容, 就可以更加輕松快速閱讀他人腳本
i. 版權聲明
ii. 作者信息
iii. 文件說明, 包括程序的目的,輸入以及輸出
iv. source() 和 library() 說明
v. 函數定義
vi. 可執行語句, 如果有的話 (例如, print, plot)
單元測試應在另一個獨立的的文件_unittest.R 中進行
-
注釋:
注釋行以 # 開頭,后加一個空格
代碼行內短注釋需要在代碼后面空兩格,然后 # ,再加一個空格
-
函數定義和調用
函數定義應先列出無默認值的參數, 再列出有默認值參數
允許每行寫多個參數; 換行只允許在賦值語句外進行
e.g.: PredictCTR <- function(query, property, num.days,
show.plot = TRUE)
參考
https://zhuanlan.zhihu.com/p/110710464
知乎_R語言代碼書寫規范
https://www.cnblogs.com/dogfaraway/p/11505856.html
博客園_Google's R Style Guide
https://yihui.org/cn/2012/09/equal-and-arrow/
謝神博客_R的若干基金及爭論
https://d.cosx.org/d/104211-104211
統計之都_Google's R Style Guide