2017-04-09 15 views
1

をks`カーネルスムージングパッケージksを使用して、kdeを使用してカーネル密度推定モデルを生成します。私はその後、生産されたモデルをサンプリングしたいと思います。R:サンプルモデルからのデータ、パッケージは `私は、これは明白な答えのどこかを持っている場合、私は1つを見つけることができませんでしたごめんなさい、私はR.</p> <p>とあまりにも経験していないよ

library(ks) 
data <- read.table("data_file.txt", header=FALSE) 
model <- kde(data) 

そして、私はどのように進むのかは分かりません。私はヘルプ文書を読んだが、必要な機能が見つからなかった。

答えて

2

単変量場合

ヘルプ文書を参照してください:あなたは任意のRの分布と同じようdkdepkdeqkderkdeを見ることができます https://cran.r-project.org/web/packages/ks/ks.pdf

rkde(100, model) 

推定分布から100の乱数が生成されます。

多変量ケース

私が直接prodiveサンプル方法をないwhick KSパッケージを見つける驚いて。とにかくそれは簡単に原則です。最初にサンプルポイントをランダムに選択してから、推定されたカーネルノイズを適用する必要があります。多変量正規カーネルと遅いが、基本的なコード例:rmvnorm以来

library(mvtnorm) 

rmkde <- function(size,flat){ 
    n <- nrow(flat$x) 
    s <- sample(1:n,size,replace=TRUE) 
    t(apply(flat$x[s,],1,function(mean)rmvnorm(1,mean=mean,sigma=flat$H))) 
} 

rmkde(100, model) 

同じ行列分解を何度も計算し、それが遅いです、あなたはそれを加速するrmvnormソースコードから分解を選ぶことができます。

関連する問題

 関連する問題