Rで,データフレームから特定の列(複数)を削除する
(不要な列番号が分かってる場合)
df <- ( データフレーム )
不要 <- c( 要らない列番号たち )
df <- df[,-不要]
例)
> df <- data.frame ( var1=c(5,3,1),var2=c(9,6,3),var3=c(1,2,3),var4=c(6,2,1),var5=c(7,4,3) )
> df
var1 var2 var3 var4 var5 ← 元のデータフレーム
1 5 9 1 6 7
2 3 6 2 2 4
3 1 3 3 1 3
> 不要 <- c(3,5) # 要らない列番号(3,5)を代入
> df <- df[,-不要] # 削除!
> df
var1 var2 var4 # 3列め,5列めが消えてる!
1 5 9 6
2 3 6 2
3 1 3 1
追記: 添字部分のマイナスを取って,『df <- df[,不要]』にすると,
「不要」に入ってる列番号だけが残ります
削除したい列番号が分かっているときに便利~
調べても,列名で削除したいときの方法や,
一つずつ削除する例ばかり見つかって,
1500列のうち特定の200列除きたい!のに一苦労.
これも,Rのルールに慣れた人なら簡単な事なんだろうけど…
Rって,統計処理だけでなく,大きなデータを編集するのにも,
スクリプト書くより便利なときもある.
しかし,直感的に使うには行列とかベクトルとかクセがあるんだよね.
慣れないとだな.
(不要な列番号が分かってる場合)
df <- ( データフレーム )
不要 <- c( 要らない列番号たち )
df <- df[,-不要]
例)
> df <- data.frame ( var1=c(5,3,1),var2=c(9,6,3),var3=c(1,2,3),var4=c(6,2,1),var5=c(7,4,3) )
> df
var1 var2 var3 var4 var5 ← 元のデータフレーム
1 5 9 1 6 7
2 3 6 2 2 4
3 1 3 3 1 3
> 不要 <- c(3,5) # 要らない列番号(3,5)を代入
> df <- df[,-不要] # 削除!
> df
var1 var2 var4 # 3列め,5列めが消えてる!
1 5 9 6
2 3 6 2
3 1 3 1
追記: 添字部分のマイナスを取って,『df <- df[,不要]』にすると,
「不要」に入ってる列番号だけが残ります
削除したい列番号が分かっているときに便利~
調べても,列名で削除したいときの方法や,
一つずつ削除する例ばかり見つかって,
1500列のうち特定の200列除きたい!のに一苦労.
これも,Rのルールに慣れた人なら簡単な事なんだろうけど…
Rって,統計処理だけでなく,大きなデータを編集するのにも,
スクリプト書くより便利なときもある.
しかし,直感的に使うには行列とかベクトルとかクセがあるんだよね.
慣れないとだな.