0

観測された変数と日付スタンプ [Var1, DD, MM, YYYY] を持つデータ フレームがあり、何千行にもわたって実行されます。毎年観測された変数の分布 [指数関数またはガンマ] を当てはめ、毎年関連するパラメーターを取得する必要があります。

Matlabでは、それはちょうど

 j=1
 k=1

 for i=1:(no_of_rows-1)

    if  year(i+1) = year(i)
        temp_data_year(j) = Var1(i)
        j=j+1

    else  [a,b]= gamfit(temp)
         param(:,:,k) = [a,b]
         k=k+1
   endif

 end   

したがって、変数 param のデータで毎年のパラメーターを取得します。

それで、これを行うことができるRに何かがありますか?

ありがとう、

4

1 に答える 1

0

このような。

# creates a sample dataset - you have this already
set.seed(1)             # for reproducible example
df <- data.frame(var1=c(rgamma(365,2,4),rgamma(365,3,5),rgamma(365,1,8)),
                 YYYY=rep(2012:2014,each=365))

# you start here...
library(fitdistrplus)   # for fitdist(...)
aggregate(var1~YYYY,df,function(X)fitdist(X,distr="gamma")$estimate)
#   YYYY var1.shape var1.rate
# 1 2012   1.891706  3.873906
# 2 2013   2.812962  4.778191
# 3 2014   1.031067  7.826776

パッケージfitdist(...)内のドキュメントを読んでください。fitdistrplus利用可能なフィッティングアルゴリズムがいくつかあります。

于 2014-07-18T15:12:47.430 に答える