将数据输入矩阵并预测r中的响应变量

时间:2015-11-10 19:23:42

标签: r regression prediction

所以我在将矢量与矩阵结合起来时遇到了问题

 require(faraway)
 x<-lm(lpsa~lcavol+lweight+age+svi+lcp+gleason+pgg45,prostate)
 y<-model.matrix(x)

我获得了新数据,我需要预测lpsa。所以我想我可以使用矢量添加数据并从那里进行回归分析。

 z<-c(1.44692,3.62301,65,.30010,0,-.79851,7,15)
 rbind(y,z)

这不仅给了我100行,而且我不确定如何使用这种方法预测lpsa。有人可以给我建议吗?

1 个答案:

答案 0 :(得分:1)

尝试:

from collections import Counter

def find_majority_vote(votes):
  counter = Counter(votes)
  most_common = counter.most_common(2)
  if len(most_common)==2:
    return 0 if most_common[0][1] == most_common[1][1] else most_common[0][0]
  else:
    return most_common[0][0]

说明:当您创建require(faraway) x<-lm(lpsa~lcavol+lweight+age+svi+lcp+gleason+pgg45,prostate) z<-c(1.44692,3.62301,65,.30010,0,-.79851,7,15) z<-z[-length(z)] names(z)<-names(x$coefficients)[-1] z<-as.list(z) predict(x,z) 1 2.036906 时,您必须使用x来预测predict您的变量的新值。您创建一个列表lpsa,其中包含与模型中一样多的变量(z除外,因为您希望“找到”它)。然后运行命令,2是新变量的lpsa的预测值。 AS的最后一个值lpsa(即15)我不知道它是什么。

z

如果您想了解回归计算的系数,您可以这样做:

unlist(z) # this shows that z is coherent as age is 65 (only value that makes sense for it)
  lcavol  lweight      age      svi      lcp  gleason    pgg45 
 1.44692  3.62301 65.00000  0.30010  0.00000 -0.79851  7.00000 

如果您想确保 coefficients(x) (Intercept) lcavol lweight age svi lcp gleason pgg45 -0.130150643 0.577486444 0.576247172 -0.014687934 0.698386394 -0.100954503 0.055762175 0.004769619 正确无误,请执行以下操作:

predict