setoya-blog

システム開発技術、データ分析関連でお勉強したことや、山奥生活を綴る、テンション低めなブログです。

列数の異なるCSVファイルのデータから、Rで2次元のリストを作る

取り込むデータ

次のような感じで、行ごとに列数が異なるCSVが読み込み対象

data1,data2,data3,data4
data5,data6
data7,data8

これを次のようなデータにしたい

c(
c("data1", "data2", "data3", "data4"),
c("data5", "data6"),
c("data7", "data8")
)

スクリプト

f <- file("./hogehoge.csv", "r")
lines <- readLines(con=f)

data.list <- list()
for (i in 1:length(lines)) {
  #読み込んだ行をコンマで分割して、ベクトル化
  line.vec <- strsplit(lines[i], ",")
  data.list <- c(data.list, line.vec)
}
close(f)