2016-04-13 18 views
0

rds dosyasından yüklenen lm nesnesindeki efekt işlevini (paket etkilerinden) çağırmaya çalışırken bir sorunla karşılaşıyorum. Dosyaları kaydetmem gerekiyor, çünkü bir döngüde birkaç modeli ayarlıyorum ve daha sonra modellerin bazılarına grafik üretmek için modelleri aldım.İşlev "efektleri", rds dosyasından yüklenen model nesnesindeki verileri bulmakta başarısız oluyor

İşte sorunun bir örnektir:

var1<-rnorm(100) 
var2<-rnorm(100) 
df1<-data.frame(var1,var2) 
lm1<-lm(var1~var2,data=df1) 
saveRDS(lm1,"lm1.RDS") 
rm(lm1,var1,var2,df1) 
loaded<-readRDS("lm1.RDS") 
library(effects) 
eff<-allEffects(loaded) 
+0

Teşekkür tekrarlanabilir örnek için. –

cevap

3

effects::allEffects işlev böyle yapmaz neden bilmiyorum ama bir modelden verileri kurtarmak için oldukça basit:

> df1 <- data.frame(var1 =loaded$model$var1, var2=loaded$model$var2) 
> eff<-allEffects(loaded) 
> eff 
model: var1 ~ var2 

var2 effect 
var2 
     -2   -1   0   1   2 
-0.08501500 -0.09133397 -0.09765294 -0.10397191 -0.11029088 
+0

Düzenleme ve cevap için teşekkürler! İşe yaradı, ama birisi neden etkilerini açıklayabileceğini merak ediyorum: allEffects işlevi bu şekilde davranıyor ... –

+0

İyi bir soru için: '' maintainer ('effects') 'dönen '' John Fox <[email protected]> '' . Sorulara çok duyarlı. Bir tüketici öğretmeni. Onu yazmakta tereddüt etmem. –

İlgili konular