データフレームから因子列のみを選択しようとしています。例は次のとおりです。R - データフレームの因子列のみを選択する
bank[,apply(bank[,names(bank)!="id"], is.factor)]
しかし、コードは奇妙な動作をします。ステップバイステップ:
sapply(bank[,names(bank)!="id"], is.factor)
私が取得:
age sex region income married children car
FALSE TRUE TRUE FALSE TRUE FALSE TRUE
save_act current_act mortgage pep ageBin
TRUE TRUE TRUE TRUE TRUE
はOKに見えます。
bank[,sapply(bank[,names(bank)!="id"], is.factor)]
しかし、結果として、私は、元の銀行のデータフレームのように、すべて同じ列を取得する:今、私はちょうど次のステップにTRUE/FALSEのこの行列を渡すと、私は必要な列のみを取得することを前提としています。何も除外されません。私はそれを試してみましたが、解決策を見つけることができません。私が間違っていることについてのアドバイスはありますか? d.b @
d.bいや@列 –
の束を持つだけでデータフレーム、私はCSVファイルからそれをロードします。特別なことは何もない。 –
[再現可能な例](http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)を提供する必要があります。それはあなたを助けることをより容易にするでしょう。 TUE/FALSEの値は、すべての列に一致する必要があります。 「id」列を除外することで、すべてをシフトしています。 – MrFlick