始める無料で始める

反復処理の導入

似た構造のファイルを何百件も読み込み、同じ操作を実行する必要があるとします。すべてのファイルを読むために何百行もの同じコードを書いたり、操作を繰り返し書いたりはしたくありませんよね。そこで役立つのが反復処理(iteration)です。反復処理とは、複数の入力に対して同じ処理を行うことです。反復処理ができるとコードを効率化でき、特にリストを扱うときに強力です。

この演習では、16 個の CSV ファイル名が files というリストに読み込まれています。実務では、list.files() 関数を使って同様のリストを作成できます。readr ライブラリもすでに読み込まれています。

このコースでは、忘れているかもしれない多くの概念に触れます。必要になったらすぐ確認できるよう、tidyverse Cheat Sheet をダウンロードして手元に置いておくと便利です。

この演習はコースの一部です

purrr で学ぶ関数型プログラミング入門

コースを見る

演習の手順

  • files リストを反復処理する for ループを作成し、各要素を readr::read_csv()readr パッケージの read_csv() 関数)への入力にします。
  • その入力を使って、各 CSV ファイルが新しく作成する all_files リストの別々の要素として読み込まれるようにします。
  • all_files リストのサイズを出力します。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Initialize list
all_files <- list()

# For loop to read files into a list
for(i in seq_along(files)){
  ___[[___]] <- read_csv(file = ___[[___]])
}

# Output size of list object
length(___)
コードを編集して実行