Was ist Ihr bevorzugter Stil für die Benennung von Variablen in R? [geschlossen]

Welche Konventionen zur Benennung von Variablen und Funktionen bevorzugen Sie im R-Code?

Soweit ich das beurteilen kann, gibt es verschiedene Konventionen, die alle in kakophoner Harmonie nebeneinander existieren:

1. Verwendung eines Periodentrennzeichens, z.

  stock.prices <- c(12.01, 10.12)
  col.names    <- c('symbol','price')

Vorteile: Hat historischen Vorrang in der R-Community, ist im gesamten R-Kern verbreitet und wird von empfohlenGoogles R Style Guide.

Nachteile: Reich an objektorientierten Konnotationen und verwirrend für R-Neulinge

2. Verwendung von Unterstrichen

  stock_prices <- c(12.01, 10.12)
  col_names    <- c('symbol','price')

Vorteile: Eine übliche Konvention bei vielen Programmier-langs; favorisiert vonHadley Wickhams Style Guide, und in ggplot2- und plyr-Paketen verwendet.

Nachteile: Wird von R-Programmierern historisch nicht verwendet. wird in Emacs-Speaks-Statistics ärgerlicherweise dem Operator '<-' zugeordnet (änderbar mit 'ess-toggle-underscore').

3. Verwendung von gemischter Großschreibung (camelCase)

  stockPrices <- c(12.01, 10.12)
  colNames    <- c('symbol','price')

Vorteile: Scheint breite Akzeptanz in mehreren Sprachgemeinschaften zu haben.

Nachteile: Hat den letzten Präzedenzfall, aber nicht historisch verwendet (entweder in R-Basis oder seiner Dokumentation).

Als wäre es nicht verwirrend genug, möchte ich darauf hinweisen, dass der Google Style Guide für Variablen die Punktnotation, für Funktionen jedoch die gemischte Groß- und Kleinschreibung vorsieht.

Das Fehlen eines konsistenten Stils über R-Pakete hinweg ist auf mehreren Ebenen problematisch. Aus Entwicklersicht erschwert es die Pflege und Erweiterung des Codes anderer (insbesondere, wenn sein Stil nicht mit Ihrem eigenen übereinstimmt). Vom Standpunkt eines R-Benutzers steilert die inkonsistente Syntax die Lernkurve von R, indem sie die Art und Weise multipliziert, in der ein Konzept ausgedrückt werden kann (z. B. ist diese Datumsumwandlungsfunktion asDate (), as.date () oder as_date ()? Nein, es ist as. Datum()).

Antworten auf die Frage(9)

Ihre Antwort auf die Frage