2014-01-07 40 views
0

我想webscrape这是间歇性的标题头的重复所中断的表: 日LME锡现金结算LME锡3个月LME锡库存R的网络刮除去unnessesary线

我可以生成包含数据

library(XML) 
tableSN <-readHTMLTable("http://www.westmetall.com/en/markdaten.php?  action=show_table&field=LME_Sn_cash",stringsAsFactors = FALSE) 
tableSN 


class(tableSN) 

但我怎么能摆脱重复标题头中,产生一个干净的数据表只显示日期和数量列

我怎么能转换的数字列表(例如21.720 ,00至21,7 20.00),你会得到一个列表的日期(例如30 2013年12月至30-12-2013)

回答

2

从数据工作。 @ agstudy的回答框对象dd,你可以做

for(i in 2:4) { 
    dd[,i] <- gsub("\\.", "", dd[,i]) 
    dd[,i] <- gsub(",", ".", dd[,i]) 
    dd[,i] <- as.numeric(dd[,i]) 
} 

lct <- Sys.getlocale("LC_TIME"); Sys.setlocale("LC_TIME", "C") 
dd[,1] <- gsub("Febuary", "February", dd[,1]) 
dd[,1] <- as.Date(strptime(dd[,1], "%d. %B %Y")) 
Sys.setlocale("LC_TIME", lct) 
str(dd) 

应该转换的数字和日期。

+0

非常感谢您的帮助。 –

2

,你可以将它data.frame这样的:

dd = do.call(rbind,tableSN) 
dd = dd[-grep('date',dd$date),] 
+0

非常感谢您的帮助 –