繁体   English   中英

无法将列添加到数据框R

[英]Not able to add columns to dataframe R

我想进行关键字匹配,然后在将数据帧写入CSV文件之前制作一个数据帧。 我声明数据框如下-

outFrame <- data.frame(word1=integer(),
                       word2=integer(),
                       word3=integer())

然后我在字典上运行它-

for (i in 1:NCOL(myKeywords)) {
  datadtm <- DocumentTermMatrix(data, control=list(tokenize=BigramTokenizer, wordLengths= c(1,Inf), dictionary = myKeywords[,i]))
  datam <- as.matrix(datadtm)
  newmat <- rowSums(datam)
  outFrame <- cbind2(outFrame, newmat)
}

但是我遇到一个错误-

Error in data.frame(..., check.names = FALSE) : 
  arguments imply differing number of rows: 0, 999

我可以看到它正确地进行了匹配,但是我很难将每一列保存到outFrame数据帧中。 如何解决这个问题,我用谷歌搜索并尝试了很多方法,但是每次遇到相同的错误时,我都会尝试。

可以这样解决:

outFrame <- data.frame()

for (i in 1:NCOL(myKeywords)) {
  datadtm <- DocumentTermMatrix(data, control=list(tokenize=BigramTokenizer, wordLengths= c(1,Inf), dictionary = myKeywords[,i]))
  datam <- as.matrix(datadtm)
  newmat <- rowSums(datam)
  if(nrow(outFrame)==0){
     outFrame=data.frame(newmat)
  }else{
  outFrame <- cbind2(outFrame, newmat)
  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM