有人可以帮我解决这个问题吗?任何建议都非常感谢!
我开始时:
A <- data.frame(stringsAsFactors = F)
A <- edit(A)
Run Code Online (Sandbox Code Playgroud)
然后我为A填写了一些值,所以它看起来像这样:
A
var1 var2
1 a x,y,z
2 b p,q
3 c g,h
Run Code Online (Sandbox Code Playgroud)
我的目标是以这种形式获得数据框:
var1 var2
1 a x
2 a y
3 a z
4 b p
5 b q
6 c g
7 c h
Run Code Online (Sandbox Code Playgroud)
这就是我尝试实现它的方式:
A2 <- data.frame(stringsAsFactors = F)
for(i in 1:nrow(A)){
if(grepl(",", A[i,2])){
split <- unlist(strsplit(A[i,2], ","))
for(j in 1:length(split)){
newrow <- c(A[i,1],split[j])
A2 <- rbind(A2, newrow)
}
}else{
A2 <- rbind(A2, A[i,])
}
} …Run Code Online (Sandbox Code Playgroud) r ×1