首页 > 解决方案 > 如何提取 PCA 结果(仅 PC1 + PC2)并将其用作逻辑回归中的自变量?

问题描述

我的数据是关于 FIFA 世界杯的。我正在努力寻找年度最佳球队冠军。由于我的数据是针对每个玩家的,因此我使用代码“group_by”并获得 352 个组。


下面是我的代码:

by_season.team<-data.fwc1 %>% group_by(Season, Team) 
by_season.team

team_PC<-group_map(by_season.team, ~prcomp(.x[3:18]), rank.=1, retx=TRUE, center=TRUE, scale=TRUE, .keep=TRUE)
team_PC

team_mean<-summarise_all(by_season.team, mean)
team_mean

team_mean1<-summarise_if(by_season.team, is.numeric, mean, na.rm=TRUE)
team_mean1

result <- summarise_at(by_season.team, c("totalwins"), last)
bind_cols(team_mean1, totalwins = result$totalwins) -> team_mean1

formula<- totalwins ~ Goals + XG + Crosses + Boxtouches + Passes + Progpasses + Takeons + 
  Progruns + Tackles + Interceptions + Clearances + Blocks + Aerials + Fouls + Fouled + NSXG

pca.log<-pcaLogisticR(formula = formula, data = team_mean1, n.pc = 3, scale = TRUE, center = TRUE, max.pc = 3)

我遇到的问题是

Error in family$linkfun(mustart) : 
  Argument mu must be a nonempty numeric vector
In addition: Warning message:
In pcaLogisticR(formula = formula, data = team_mean1, n.pc = 3,  :
  NAs introduced by coercion

有人可以帮助我,我的代码/数据有什么问题吗?或者有没有更好的方法来提取我的 pca 结果,以便我可以将它用作 log reg 中的自变量?

标签: extractlogistic-regressionpca

解决方案


推荐阅读