後因子/ベクトルとなります。例:Data.frameは、私は同様に、一つの列とdata.frameを有するフィルタリング/サブセット
> res = d[!(d$animal %in% c("horse")),]
> res
[1] dog cat
Levels: cat dog horse
>class(res)
[1] "factor"
ここでは何が起こっていますか?
後因子/ベクトルとなります。例:Data.frameは、私は同様に、一つの列とdata.frameを有するフィルタリング/サブセット
> res = d[!(d$animal %in% c("horse")),]
> res
[1] dog cat
Levels: cat dog horse
>class(res)
[1] "factor"
ここでは何が起こっていますか?
R.へようこそあなたはちょうどdrop
迷惑にかましてきた:あなたが明示的に「1次元にドロップ」しないようにRを指示する必要があります:
res = d[!(d$animal %in% c("horse")), , drop = FALSE]
Jeez。誰がそれが良いアイデアだと思った? –
Patrick Burns 'R Inferno(パトリック・バーンズ・R・インフェルノ)の詳細は、http://lib.stat.cmu.edu/S/Spoetry/Tutor/R_inferno.pdf –
を参照してください。面白いことに、私はRを3,4回使用しています私がこれに遭遇したのは初めてです。私は通常、1列のデータフレームを使用しないと思います。 –
はまた注意し、その列のクラスであなたのdata.frameは "文字"ではなく "factor"です:class(d [[1]]) '。 –