広告データ フレームがあり、ほぼ同じ名前の列を削除したい。例 col, col1, col2 .... coln
私はこのようなことを試しました:
d$coln <- NULL
ただし、最後の列の列でのみ機能します。
広告データ フレームがあり、ほぼ同じ名前の列を削除したい。例 col, col1, col2 .... coln
私はこのようなことを試しました:
d$coln <- NULL
ただし、最後の列の列でのみ機能します。
grep
列を識別しlist(NULL)
て削除するために使用します。
いくつかのサンプルデータ:
set.seed(1)
mydf <- data.frame(id_1 = 1:6, id_2 = c("A", "B"), varA.1 = sample(letters, 6),
varA.2 = sample(letters, 6), varA.3 = sample(letters, 6),
varB.2 = sample(10, 6), varB.3 = sample(10, 6),
varC.3 = rnorm(6))
mydf
# id_1 id_2 varA.1 varA.2 varA.3 varB.2 varB.3 varC.3
# 1 1 A g y r 4 3 -0.04493361
# 2 2 B j q j 7 4 -0.01619026
# 3 3 A n p s 8 1 0.94383621
# 4 4 B u b l 2 10 0.82122120
# 5 5 A e e p 10 6 0.59390132
# 6 6 B s d u 1 2 0.91897737
「varA」を含むすべての列を削除しましょう。
mydf[grep("varA", names(mydf))]
mydf[grep("varA", names(mydf))] <- list(NULL)
mydf
# id_1 id_2 varB.2 varB.3 varC.3
# 1 1 A 4 3 -0.04493361
# 2 2 B 7 4 -0.01619026
# 3 3 A 8 1 0.94383621
# 4 4 B 2 10 0.82122120
# 5 5 A 10 6 0.59390132
# 6 6 B 1 2 0.91897737