![見出し画像](https://assets.st-note.com/production/uploads/images/122055203/rectangle_large_type_2_cdbd93c161160477e525a3d363dcec88.png?width=1200)
【2-4】Rで列名を変更する方法
はじめに
第2章ではdata.frameの使い方について紹介しています。
csvやExcelなど外部データを読み込むときは列名を変えたいことはよくあります。
今回は列名を変更する方法について紹介します。
データの準備
#pacmanパッケージがあるかを確認。なければinstall.packagesパッケージをインストール
if (!require("pacman")) install.packages("pacman")
#今回使うパッケージ
pacman::p_load(dplyr, rio)
#データの準備
url <- "https://mitti1210.livedoor.blog/data.xlsx"
data <- import(url, which = "入院", skip = 2)
head(data)
![](https://assets.st-note.com/img/1700304057996-pXNnfRBjUV.png?width=1200)
rename()
rename()はdata.frameの列名を変更します。
代表的な使い方は以下の2パターンです。
![](https://assets.st-note.com/img/1700304470346-6T7Solyu2o.png?width=1200)
# rename(データフレーム, 新しい列名 = 古い列名)
temp <-
rename(data, ID = id)
head(temp)
# データフレーム |> rename(新しい列名, 古い列名)
temp <-
data |>
rename(ID = id)
head(temp)
![](https://assets.st-note.com/img/1700304770435-NI5o8hOx7Q.png?width=1200)
また古い列名に関しては列名以外にも列番号でもOKです。
#rename関数の古い列名は列番号でもOK
temp <-
data |>
rename(ID = 2)
head(temp)
複数列列名を変えたいときは,を使います
temp <-
data |>
rename(ID = id, name = 氏名)
head(temp)
#改行してもOK
temp <-
data |>
rename(
ID = id,
name = 氏名
)
head(temp)
![](https://assets.st-note.com/img/1700305127518-wbpNbYXP8d.png?width=1200)
select()
【2-2】で列の選択で使ったselect()でも列の選択と同時に列名を変更することができます。ただし列名の選択を行う時に絞って使うと良いと思います。
# select(新しい列名 = 古い列名)でも列名が変わる
temp <-
data |>
select(ID = id, name = 氏名)
head(temp)
# 上記と同じ。selectとrenameを2回使わなくても良いので上記が便利
temp <-
data |>
select(id, 氏名) |>
rename(ID = id, name = 氏名)
![](https://assets.st-note.com/img/1700305381672-Gm3tEnFBuS.png?width=1200)
names()
names()を使って直接指定することも可能です。
まずnames()を使ってみましょう。
names(data)
class(names(data))
![](https://assets.st-note.com/img/1700305788091-Q9nEZGTzmh.png?width=1200)
class()を使うと"character"となっています。つまりnames()は列名をベクトルとして返しています。
ベクトルの◯番目を抽出するには【1-16】で行った[ ]を使います。
temp <- data
names(temp)[2] # 2番めのidが表示されます
names(temp)[2] <- "ID" #これで id が ID に変更されます
names(temp)
![](https://assets.st-note.com/img/1700306124411-4T7UM8KTS7.png?width=1200)
まとめ
今回は列名を変更する代表的な方法を紹介しました。
やりかたは色々ありますが使いやすいものを探してみてください。