auditR
データフレームを結合したら列が2つになった
2つのデータフレームを結合するには、bind_rows(df1, df2)が便利
しかし、両者の列名が揃っていない場合、異なる列として扱われてしまう。
例えば、df1$X1とdf2$x1とは同じ意味の列であったとしても異なる列になる
結合する前に列名を揃えるのが手っ取り早いが、意外と面倒なので、自分は取り急ぎ最初に結合して出来上がるデータフレーム上で処理する
前提として、bind_rowsを使うと、結果とはX1、x1のデータがあった場所には元のデータがあり、なかった場所にはNAが入っている
そういうときにcoalesce()関数を使う
library(dplyr)
# サンプルデータの作成
df <- data.frame(
X1 = c(1, NA, 3, NA),
X2 = c(NA, 2, NA, 4),
Y = c("A", "B", "C", "D")
)
# X1列にX2の値を統合
df <- df %>%
mutate(X1 = coalesce(X1, X2)) %>% # X1列にX2列の値を統合
select(-X2) # 不要になったX2列を削除
# 結果を表示 print(df) X1 Y 1 1 A 2 2 B 3 3 C 4 4 D
Last updated 2024-11-15 | auditR (c) N.Nawata