1

sp パッケージを使用して R でバブル プロットを作成しようとしています。私のデータには多くの欠損値 ("N/A") があり、バブル プロットはそれを気に入っていないようです。

library(sp)
X<-runif(100, min=0, max=1000)
Y<-runif(100, min=0, max=1000)
grade<-c((rnorm(n=50,mean=30, sd=4)), (rep(NA, 50)))
df<-data.frame(X,Y, grade)
coordinates(df)<-~X+Y
bubble(df, "grade", na.rm=TRUE)

このコードを実行すると、「Quantile.default(data[, zcol]) のエラー: 'na.rm' が FALSE の場合、値がなく、NaN は許可されていません」というエラー メッセージが表示されます。

欠損値を消せって言ったから分からん!! sp には、私が見逃した欠損値を処理するためのわずかに異なる方法があると思われます

4

2 に答える 2

4

代わりにこれを試してください (na.rm が適切な関数に渡されないように見えるため):

bubble(df[!is.na(df$grade), ], "grade")

「SpatialPointsDataFrame」オブジェクトのサブセット メソッドもあります。

bubble(subset(df, !is.na(grade)), "grade")
于 2011-11-15T04:13:42.053 に答える
4

help(bubble) を読むと、na.rm パラメータがないことがわかります。lm と glm で動作するからといって、どこでも動作するわけではありません。R は何百人もの人々によって書かれており、na.rm が常に機能するという規則に従うという普遍的な要件はないことを思い出してください。

バブルには「...」引数があることに注意してください-これは「na.rm」をキャッチしてxyplotに渡します-しかし、na.rm引数もありません。xyplot の呼び出しを考える前に、バブル内のコードによってエラーがスローされるため、それは問題ではありません。

サブセットが答えです(すでに説明したように)

于 2011-11-15T10:09:22.630 に答える