2  コード作成の作法

覚えておくべき内容
  1. コードを書くときは,半角全角に超注意
  2. コードを書くときは,インデントを揃える
  3. コメントをたくさん書く
  4. 変数名は原則,英数字とアンダースコアのみ

Readable Code

The Principles

オススメの本2冊

2.1 コードの書き方

Rに限らず、プログラミング言語では、コードを書くときにいくつかの作法があります。 コードを書き始める前に、これらの作法を知っておくことは、コードを書くときに役立ちます。 作法を守って可読性が高いコードを書くことで、エラーを防ぎつつ、また他人が読んだときにも理解しやすいコードを書くことができます。

2.1.1 半角英数と大文字小文字

コードを書くときには、半角英数を使うようにします。 直接入力とも呼ばれます。

またプログラミング言語では、大文字と小文字を区別します。 つまり、aAは別の変数として扱われます。 一見、大文字と小文字の見分けが困難な文字もあるため、注意が必要です。

X <- c(1, 2, 3) # 変数Xを作成
x <- c(1, 2, 3, 4, 5, 6)
print(X) # どっちか紛らわしい
[1] 1 2 3

2.1.2 インデントと半角スペース

コードを書くときには、インデントを揃えるようにします。 インデントとは、行頭の空白のことです。 インデントを揃えることで、どの行がどのブロックに属しているかが一目でわかります。 インデントはTABキーを押すことで入力できます。

また、演算子の前後には半角スペースを入れるようにします。半角スペースは無視されるので、コードの実行には影響を与えません。

#インデントを揃えていないし、
#半角スペースも入れていない例
if(x>0){
y<-x*2
z<-x*3
}

# インデントを揃えて、半角スペースを入れた例
if (x > 0) {
  y <- x * 2
  z <- x * 3
}
# 読みやすいですよね。

コンマの後ろにも半角スペースを入れるようにします。

dice<-c(1,2,3,4,5,6) # 見づらい
dice <- c(1, 2, 3, 4, 5, 6) # 見やすい

半角スペースと全角スペースを混在させないようにします。 全角スペースは文字として扱われるため、エラーの原因になります。たとえば、次のようなコードはエラーになりますが、発見することが難しいので、注意が必要です。

# 全角スペースや全角のコンマを使っているのでエラーになる
dice <- c(12、 3456)

2.1.3 コメント

コードを書くときには、コメントを書くようにします。 コメントとは、コードの中にプログラマーがメモを残すためのものです。 コメントは、コードの実行には影響を与えません。 Rのコメントは、#で始まる行です。

# これはコメントです。
# この行は実行されません。
dice <- 1:6 # サイコロを作成

コードを1ヶ月後に見直したとき、自分が何を思ってこのコードを書いたのかを思い出すことは難しいので、コメントは積極的に残すようにしましょう。

また,今まで皆さんは間違ったコードを書いてしまったときは,コードを削除していたかもしれませんが,どこが間違っているのか,後で確認できるように,コードは消さずにコメントアウトしておくようにしましょう。

coin <- c("H", "T") # コインを作成
# mean(coin) # 文字列の平均はとれないのでエラーになる

2.1.4 変数名

変数名は自由に決めることができますが、いくつかのルールがあります。

  • 変数名は、英数字アンダースコアのみを使うようにします。少々長くなってもよいので、わかりやすい名前をつけましょう。
  • 変数名は、数字で始めてはいけません
  • 変数名は、大文字と小文字を区別します
  • 変数名は、R上であらかじめ定義されている予約語を使ってはいけません。例えば、ifforなどは予約語です。

RstudioやVS Codeにはコマンドや変数名を途中まで入力したら、補完してくれる機能があります。 したがって少々長い変数名でも、途中まで入力すれば補完してくれるので、入力もそこまで面倒ではないですし、変数名を覚える必要はありません。

year_2000_2023 <- 2000:2023

数値:数値で、連続した整数値を作成することができます。 1:10は、1から10までの整数の数列を作成します。

最近のバージョンのRでは日本語の変数名も使えます。

売上高 <- c(100,240,420)
mean(売上高) # 平均が計算される
[1] 253.3333

分かりやすいといえば,分かりやすいですが,日本語フォントは文字コードに表示が左右されるため,場合によっては文字化けの原因になります。

2.1.5 まとめ

  • R + RstudioかR+VS Codeを準備
  • コードはインデントと半角スペースで見やすく
  • コードにはコメントをたくさん書く
  • 変数名は原則,英数字とアンダースコア_を使う。

2.2 練習

以下のコードを見やすいように半角スペースを入れて書き換えてください。