0

こんにちは、単純なデータセットを使用して単純な輪郭を作成しようとしています。

使用したデータセットは次のとおりです。

 dput(elevation)
structure(list(x = c(1L, 2L, 3L, 5L, 10L, 12L, 13L, 9L), y = c(5L, 
20L, 18L, 25L, 31L, 25L, 8L, 12L), z = c(5L, 10L, 15L, 8L, 7L, 
6L, 2L, 4L)), .Names = c("x", "y", "z"), class = "data.frame", row.names = c("1", 
"2", "3", "4", "5", "6", "7", "8"))

上記のデータを、elevation.csv という名前のファイルに結合しました。

loess と expand.grid 関数を使用して補間を行いました。黄土モデルの次数とスパンをどのように選択すればよいでしょうか?

プロットに使用したコードは次のとおりです。

require(ggplot2)    
require(geoR)
elevation <- read.table("elevation.csv",header=TRUE, sep=",")
elevation

elevation.df <- data.frame(x=elevation$x,y=elevation$y,z=5*elevation$z)
elevation.df
elevation.loess=loess(z~x*y, data=elevation.df,degree=2,span=0.25)
elevation.fit=expand.grid(list(x=seq(1,13,2),y=seq(5,30,4)))
elevation.fit[1:20,]
z = predict(elevation.loess,newdata=elevation.fit)
elevation.fit$Height=as.numeric(z)
v <- ggplot(elevation.fit,aes(x,y,z=Height))
v1 <- v+stat_contour(aes(colour=..level..))+geom_point(data=elevation.df,aes(x=x,y=y,z=z))
direct.label(v1)

得られた結果が正確な結果かどうかはわかりません。誰かがこの結果を他の手法で検証し、ビューを共有できますか? 実際には、大規模なデータセットを処理する必要があり、最初は簡単なことから始めたいと考えています。

上記のコードで得た出力は次のとおりです。

ここに画像の説明を入力

これは、多数のデータセットを処理するための適切な方法ですか?

ありがとう。

4

1 に答える 1

2

私はこれを取得します...という名前の関数がないことに関する警告とエラーの後direct.label:

Warning messages:
1: In simpleLoess(y, x, w, span, degree, parametric, drop.square, normalize,  :
  span too small.   fewer data values than degrees of freedom.
2: In simpleLoess(y, x, w, span, degree, parametric, drop.square, normalize,  :
  pseudoinverse used at 0.23095 0.70587
3: In simpleLoess(y, x, w, span, degree, parametric, drop.square, normalize,  :
  neighborhood radius 1.9692
4: In simpleLoess(y, x, w, span, degree, parametric, drop.square, normalize,  :
  reciprocal condition number  0
5: In simpleLoess(y, x, w, span, degree, parametric, drop.square, normalize,  :
  There are other near singularities as well. 2.063

ここに画像の説明を入力

このデータ不足の状況で何が「正しい」かは、判断の問題です。2D 範囲がこのようにむらがあるため、ポイントの z 値にラベルを付けることを検討します。警告は、数学が「強調」されている兆候です。y = 30 を超える領域に問題があることを示唆していると思います。

ここに画像の説明を入力

于 2013-01-18T01:59:17.680 に答える