「Select Cases」メニューオプションを使用してSPSSで行う場合と同様に、データフレームをフィルタリングする単純な関数を定義します。このR関数の何が問題なのですか?
q3aが1の場合だけ保持したい場合は、サブセット関数を使用してフィルタリングするためにコンソールに入力するものを次に示します。subset(df, q3a==1)
私は次の関数を使用する場合、これは問題なく実行し、Q3Aがしかし1
あるケースのみを含むデータフレームを返します、私はエラーを取得する:
filter <- function(frame, var, val) {
newFrame <- subset(frame, var==val)
return(newFrame)
}
私が実行しようとするとfilter(df, q3a, 1)
、Rは私に以下のエラーを投げます:Error in eval(expr, envir, enclos) : object 'q3a' not found
。
ここに問題があるのはわかりません。関数がサブセット関数に引数を直接渡すだけで、明らかにそれは起こっていないようです。
興味深いのはhttp://stackoverflow.com/questions/9860090/why-is-better-than-subset – user20650
あなたは['filter'](https://cran.rstudio.com/)に気づいていますか? web/packages/dplyr/vignettes/introduction.html)から 'dplyr'を探していますか?可能であれば、既存のパッケージから関数を使用することをお勧めします。 – Hugh
'filter(df、df $ q3a、1)'です。 –