変数と関数の命名規則として、Rコードではどの規則を使用しますか?
私の知る限りでは、いくつかの異なる規則があり、それらはすべて不協和音で共存します。
1.ピリオドセパレータの使用、例えば
stock.prices <- c(12.01, 10.12)
col.names <- c('symbol','price')
長所: Rコミュニティで歴史的な優先順位があり、Rコア全体に普及しており、GoogleのRスタイルガイドで推奨されています。
短所: オブジェクト指向の意味合いで溢れ、R初心者を混乱させる
2.アンダースコアの使用
stock_prices <- c(12.01, 10.12)
col_names <- c('symbol','price')
長所: 多くのプログラミング言語で共通の規則。Hadley WickhamのStyle Guideに支持され、ggplot2およびplyrパッケージで使用されています。
短所: Rプログラマーがこれまで使用していない。Emacs-Speaks-Statistics(「ess-toggle-underscore」で変更可能)の「<-」演算子にうっとうしくマッピングされます。
3.混合大文字の使用(camelCase)
stockPrices <- c(12.01, 10.12)
colNames <- c('symbol','price')
長所:いくつかの言語コミュニティで広く採用されているようです。
短所:最近の前例がありますが、(Rベースまたはそのドキュメントで)歴史的に使用されていません。
最後に、それが十分に混乱していないかのように、Googleスタイルガイドは変数のドット表記を主張しているが、関数の大文字の混在は主張していることを指摘する必要があります。
Rパッケージ全体で一貫したスタイルがないことは、いくつかのレベルで問題があります。開発者の観点からすると、他のコードの保守と拡張が困難になります(特に、スタイルが自分のコードと一致しない場合)。Rユーザーの観点から見ると、一貫性のない構文は、概念の表現方法を増やすことで、Rの学習曲線を急勾配にします(たとえば、日付キャスト関数としてasDate()、as.date()、またはas_date()ですか?いいえ、そうです。日付())。
ImfDataTransformed
や自然な拡張バージョンIMFDataTransformed
は、私の好みのTOGGLEcamelCaseほど読みにくいですIMFdataTransformed
。...
alllowercase
、変数名、ストレートから-式が非常に短い名前の多くは(x
、y
など)。