R言語のデータフレームで、1から始まる連番列を追加する方法について解説します。行名に関する操作には、tidyverseパッケージに含まれているtibbleパッケージを使用するのが便利です。ここでは、tibbleパッケージのrownid_to_column()を使用した方法についてお伝えします。
rownid_to_column()の概要
rownid_to_column()は、データフレームに1から始まる連番列を追加するための関数です。しかし、既存の行名が削除されることに注意してください。
rowid_to_column()の使い方
tibble::rownid_to_column()の使い方は次になります。
rowid_to_column(.data, var = "rowid")
rowid_to_column()の引数の意味
.data
データフレームを指定します。
var = “rowid”
行名に使用する列名を指定します。
準備
あらかじめ、tidyverseパッケージを読み込んでおきます。
library(tidyverse)
解説のために、次のmtcarsデータセットを使用します。
head(mtcars)
mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
1から始まる連番列を追加する
1から始まる連番列idを追加するには次のようにします。
mtcars |>
rowid_to_column("id") |>
head()
id mpg cyl disp hp drat wt qsec vs am gear carb
1 1 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
2 2 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
3 3 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
4 4 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
5 5 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
6 6 18.1 6 225 105 2.76 3.460 20.22 1 0 3 1
R×tibble::rownid_to_column データフレームに1から始まる連番列を追加する