R言語|方法欠損値処理 - 多重代入によって:マウス()パケットを使用して

自分の研究ノートを記録するために開始されてから今日の友人~~~ 2020年3月5日

欠損値の処理-多重代入によって
の基本的な考え方
モンテカルロシミュレーション(MCMC)完全なデータセットの数、線形回帰(LM)または一般化線形仕様を使用して、各データセットに生データの補間(GLM)、そのような補間などの方法をモデル化する、これらの一緒に完全なモデルを統合し、補間モデルのメリットを評価し、完全なデータセットを返します。主にマウスで駆動パッケージシリーズのマウスを用いた方法は、()を行います。
以下の手順:
データを推定するために不足して補間が--MCMC複数のデータセットを設定-各補間モデルのためのデータセット(GLM、LMモデル) -一緒に(プール)これらのモデルを統合する-補間の評価補体モデルメリット(t統計モデル係数) -完全なデータセット(計算)を出力する
基本機能の2匹のフォーマット
の詳細については、R言語入力ヘルプ(マウス)
マウス(データ、M = 5、方法= vetor( "charater"、長さ=のNcoI(データ))、SEED = NA、defaultMethod = C( "PMM"、 "ロガー"、 "PolyReg"、 "不良")...)
データ:行列完全なデータを含み、欠落データまたはデータブロック
M:多重度は、補間数、デフォルト値を指定した5。
方法:文字列または列の文字ベクトルの同じ番号のデータセットの長さは、単一の文字を用いて指定されたデータの各列のための補間方法を同様の方法で指定されたすべての列の補間文字列は、文字列の列ベクトルは、異なる補間方法は、異なる使用して指定されたパラメータによって補間されるデフォルトの補間対象カラムに応じて指定defaultMethod
種:整数、関数set.seed()のパラメータ デフォルト値はNA
defaultMethod:ベクター、各データセットに使用される補間モデルを特定するための方法は、「PMM」、から選択する様々な方法があり、平均マッチング予測を示し、「LogReg」は、「ロジスティック回帰を適合させることによって表されますpolyregは「多項式フィットを表し、」POLRは、「比例オッズモデルがフィットし、そうで表します。

図3に示すように、応用例

>imp<-mice(algae[,4:11],seed=1234)  #创建一个imp对象,使用的数据为algae数据集中含有缺失值的第411行数据,默认插补数据集为5>fit<-with(imp,lm(mxPH~.,data=algae[,4:11])  #fit对象用于设定统计方法
>pool=pool(fit)  #对统计分析结果进行汇总
>options(digits=3)  #设定输出结果保留3个小数
>summary(pool)   #用summary函数显示pool的统计信息
>imp$imp$C1    #查看变量C1在五个插补数据集中的插补结果
>imp$method    #查看每个变量所用的插补方法
>algea_compelete=complete(imp,action=1)  #使用函数complete( )返回五个插补数据集中指定的任意一个数据集,这里返回的插补数据集中第一个
>sum(is.na(algae_complete)) #查看插补的第一个数据集是否还有缺失值
>par(mfrow=c(3,3))  #调用函数par( )为设置的R图形的系统参数,这里将图形输出设置为3*3的格式,即一个图版显示33>stripplot(imp,pch=c(1,8),col=c("grey","1") #利用mice包中的函数stripplot( )对变量分布图进行可视化,其中包含插补数据
>par(mfrow=c(1,1))  #画完图后将窗口重新设置为1*1的格式

4、(私は研究で直面する問題である)よくある質問
1)関数LM()の中間点。「」何を代表?
LM(mxPH〜、データ=藻類 〔、4:11]。) この式においてmxPH〜LM(あろう)mxPH変数として解釈されるべき特定のテーブル内のデータを解釈するには、他の変数は、線形回帰のように解釈します。このモデルは、多くの場合、変数は、コードを簡略化することができますが、データ列は、選択*を使用してSQLにおけるリスクと少し似変わっ続いたときのリスクは、回帰式の変更です。
2)種子(1234)補間での使用は何ですか?
種子は、整数、関数set.seed()のパラメータ、指定された乱数発生の固定数です。括弧内の数字は、set.seed(100)としてばかり数、括弧内の数字は、「百」として理解されるべきではないれているが、と理解されるべきである「数百乱数生成。」乱数シードを設定するために使用され、種子はある特定の擬似ランダムシーケンスを生成することができ、この機能の主な目的は、あなたのシミュレーションは、我々は乱数を取る必要回数繰り返すことができるようにすることですが、このコード結果は同じでない場合、同じシミュレーション結果が繰り返される必要があれば、それはすることができ、再び使用set.seedを実行します()。デバッガや表示のためには、結果の再現性は非常に重要である場合には、乱数をシードする必要があります。

出版元の記事 ウォンの賞賛0 ビュー10

おすすめ

転載: blog.csdn.net/qq_41421861/article/details/104686557