2013-09-27 65 views
1

我有一个庞大的数据,其中有大约2,000个变量和约10,000观察。 最初,我想为1999年的每个独立变量运行回归模型,然后逐步进行模型选择。 因此,我会有2000个模型。R代码:提取高度相关的变量和运行多变量回归模型与选定的变量

然而,遗憾的是 - [R提出,因为内存不足错误.. 所以,另外,我曾试图删除一些独立的变量,是低相关性价值 - 也许比.5-

导致与变数每个因变量高度相关的,我想运行回归模型..

我试图做好后续代码,甚至melt功能不会因为内存问题工作..哦,上帝..

test<-data.frame(X1=rnorm(50,mean=50,sd=10), 
      X2=rnorm(50,mean=5,sd=1.5), 
      X3=rnorm(50,mean=200,sd=25)) 

test$X1[10]<-5 

test$X2[10]<-5 
test$X3[10]<-530 

corr<-cor(test) 
diag(corr)<-NA 
corr[upper.tri(corr)]<-NA 
melt(corr) 
#it doesn't work with my own data..because of lack of memory. 

请帮助我..非常感谢你提前..!

+0

就可以考虑使用'glmnet'封装的处理更加条理化,并更高效,方式这个问题... –

+0

谢谢你的好评!我只是快速看看它。但我不能清楚地理解什么是“套索或弹性网络调节路径”的意思。 – user976856

+1

请参阅http://www-stat.stanford.edu/~tibs/ElemStatLearn/(不一定是一个简单的但如果你打算在这个领域工作,请阅读,但是值得投资......) –

回答

0

在这种情况下,如果可能值得尝试稀疏诱导技术,如Lasso。这里通过限制回归系数的绝对值之和来选择变量的稀疏子集。

这会给你的,这是最相关的变量缩减子集(并且由于套索算法的性质也是最相关的,这是你要找的)

在R您可以使用在LARS包和有关套索信息可以在这里找到: http://www-stat.stanford.edu/~tibs/lasso.html

也是一个很好的资源是:http://www-stat.stanford.edu/~tibs/ElemStatLearn/