【发布时间】:2016-05-23 07:30:41
【问题描述】:
我有一个 data.frame,其中包含棒球比赛每局得分的得分作为特征向量。
我想创建一个新的 data.frame,其中列出了每场比赛的每局得分。我可以用一个循环来做到这一点,但我知道这对于任何合理数量的观察来说都太慢了,而且显示的rbind 方法也不理想。
局数可能会有所不同,x 表示球队不需要在第 9 局中击球,因为比赛已经获胜。
library(stringr)
data <- data.frame(gameID=c("a","b","c"),innings=c("002100000","30000000x","10101010101"))
for(i in 1:nrow(data)) {
box <- as.integer(str_split(data$innings[i], "")[[1]])
tempdf <- data.frame(box,id=data$gameID[i])
if(i!=1) {
df <- rbind(df,tempdf)
} else {
df <- tempdf
}
}
【问题讨论】: