我正试图从埃博拉疫情清单中得到埃博拉的总死亡人数,但似乎找不到我的错误。会很感激你的帮助。网站链接为outbreaks
我使用了以下代码:
url1 <-'http://en.wikipedia.org/wiki/List_of_Ebola_outbreaks'
df1<- readHTMLTable(url1)[[2]]
df1$"Human death"但是当我试图用sum函数来添加这个值的时候。它给出了以下错误
Error in Summary.factor(c(5L, 12L, 1L, 2L, 9L, 1L, 1L, 1L, 1L, 14L, 1L, :
sum not meaningful for factors有人能帮我弄清楚吗?
发布于 2014-11-10 09:05:40
您正在读取带有R默认值的表,该表将字符转换为因素。您可以在stringsAsFactors = FALSE中使用readHTMLTable,这将传递给data.frame。此外,该表还使用逗号来分隔千个分隔符,您需要删除这些分隔符:
library(XML)
url1 <-'http://en.wikipedia.org/wiki/List_of_Ebola_outbreaks'
df1<- readHTMLTable(url1, which = 2, stringsAsFactors = FALSE)
df1$"Human death"
sum(as.integer(gsub(",", "", df1$"Human death")))
> mySum
[1] 6910https://stackoverflow.com/questions/26839983
复制相似问题