0
ここではかなり新しいRユーザーです。私は、dplyrパッケージのアレンジ関数を利用する簡単な関数を書いています。この関数は、部分文字列マッチングを使用してデータフレームをフィルタリングし、その関数内の 'sortby'引数で指定されたカラムで結果をソートします。これは私が今までに持っているものです:カスタム関数内でdplyr arrange()関数を使用して変更されたデータフレームを並べ替えます。
calcs <- function(data, type, sortby) {
filt <- data[grep(type, data$name), ]
ord <- dplyr::arrange(filt, desc(sortby))
return(ord)
}
評価時にsortby変数が見つかりません。私はそれが標準的で非標準的な評価と関係があると推測していますが、これは私のプログラミング適性の外に少しあります。ここで
が再現可能な例である:
mydata <- data.frame(name=c("GI Joe", "GI Joe", "Batman", "Xbox"),
rating=c(8,12,8,1))
calcs(data=mydata, type="GI", sortby=rating)
Error in desc(sortby) : object 'rating' not found
明確にするため、この機能を持つ私の目標は、部分文字列の一致を使用してデータセットをフィルタリングするために、対象の列に結果をソートすることです。