Iは、以下のRコードを使用し、glm結果をデータなしで保存するか、または予測のための係数のみを保存する方法はありますか?
model_glm=glm(V1~. , data=xx,family="binomial");
save(file="modelfile",model_glm);
MODELFILEのサイズは私の場合に1GIGされるデータ、限りであろう。 model_glmの結果でデータ部分を削除するにはどうしたらよいですか?小さなファイルしか保存できません。
Iは、以下のRコードを使用し、glm結果をデータなしで保存するか、または予測のための係数のみを保存する方法はありますか?
model_glm=glm(V1~. , data=xx,family="binomial");
save(file="modelfile",model_glm);
MODELFILEのサイズは私の場合に1GIGされるデータ、限りであろう。 model_glmの結果でデータ部分を削除するにはどうしたらよいですか?小さなファイルしか保存できません。
glm
への電話でmodel = FALSE
を設定すると、model.frame
が返されないようにする必要があります。また、を設定すると、応答ベクトルが返されなくなります。 x = FALSE
がデフォルト設定であり、model.matrix
が返されないようにします。
この組み合わせでは、glmオブジェクトのサイズを縮小する必要があります。
はもちろん、あなたも
summary(model_glm)$coef
は、あなたはそれを保存する前に、モデルオブジェクト内のデータをNULLでき、標準エラーで、coef(model_glm)
での係数を抽出したりすることができます。私は簡単なテストを行い、予測を生成しました。
model_glm$data <- NULL
私は、生産におけるRの一部として、GLMを実行していたこの問題を持っていたし、GLMのサイズが大幅に私を鈍化。 $data
以上のものを殺す必要があることがわかった。 Hereは私のポストで、以下の例があります。
> object.size(sg)
96499472 bytes
> sg$residuals <- NULL
> sg$weights <- NULL
> sg$fitted.values <- NULL
> sg$prior.weights <- NULL
> sg$na.action<- NULL
> sg$linear.predictors <- NULL
> sg$fitted.values <- NULL
> sg$effects <-NULL
> sg$data <- NULL
> object.size(sg)
3483976 bytes
> sg$qr$qr <- NULL
> object.size(sg)
79736 bytes
返されてからmodel.frameを防ぐためにglm' 'への呼び出しで' biglm'パッケージ – hadley
設定 'モデル= false'をを使用してください。 – BenBarnes