【发布时间】:2015-10-22 05:25:14
【问题描述】:
我正在学习获取、清理和组合数据。我很困惑为什么在循环中rbind 命令会返回 10 个数据,而不是像我手动组合(i by i)时预期的 30 个数据。
library(XML)
mergeal <- NULL
tabnums <- 3
for (i in 1:length(tabnums)) {
bnn <- paste0("http://www.ngchanmau.com/listing_browse.php?cur_page=",
tabnums[i], "&&coming=22-Oct-2015&coming=22-Oct-2015")
tem <- readHTMLTable(bnn, header=T, stringsAsFactors=F)
#data cleaning
ff <- tem[8] #wanted data
ff1 <- as.data.frame(ff)
ff2 <- ff1[ , 1] #get 1st col data only
ff3 <- unique(ff2)
ff4 <- ff3[c(2,5:13)] #wanted list only
#merging dataset
mergeal <- rbind(mergeal, ff4)
}
我尝试过使用listrbind list of data frames with one column of characters and numerics,但仍然得到与上面相同的结果。感谢我错过的任何帮助,谢谢。
【问题讨论】:
-
您只使用
1:length(tabnums)迭代一次。也许你的意思是1:tabnums?如果是这样,请使用i代替tabnums[i] -
谢谢!你说得对,我是初学者。
1:tabnums做到了。这很有帮助,谢谢。