R 如何解析数据框中的文本?
这是我想从中获取数据的网络。R 如何解析数据框中的文本?,r,parsing,R,Parsing,这是我想从中获取数据的网络。 我可以从网络上以txt格式下载,如何才能将数据作为数据帧?我认为这是一个非常有趣的问题,不幸的是,这个问题可能会被解决,因为OP没有显示任何解决问题的努力。问题是如何从文本文件中提取数字表 您应该首先使用grep在文本中检测表的开始和结束 使用read.fwf读取分隔数据 使用一些正则表达式和toString将双标头更改为简单标头 这是我的代码: ll <- readLines('allo1.txt') i1 <- grep('Country',ll)
我可以从网络上以txt格式下载,如何才能将数据作为数据帧?我认为这是一个非常有趣的问题,不幸的是,这个问题可能会被解决,因为OP没有显示任何解决问题的努力。问题是如何从文本文件中提取数字表 您应该首先使用grep在文本中检测表的开始和结束 使用read.fwf读取分隔数据 使用一些正则表达式和toString将双标头更改为简单标头 这是我的代码:
ll <- readLines('allo1.txt')
i1 <- grep('Country',ll)
i2 <- grep('Grand Total',ll)
dat <- read.fwf(textConnection(ll[c(seq(i1+3,i2,1))]),
widths = c(20,-1,rep(c(7,-1),13)))
dat.h <- read.fwf(textConnection(ll[c(i1-1,i1)]),
widths = c(20,-1,rep(c(7,-1),13)))
nn <- unlist(lapply(dat.h,function(x)gsub('\\s|[*]','',toString(rev(unlist(x))))))
names(dat) <- nn
Country, 2013,Apr 2013,Mar 2013,Feb 2013,Jan 2012,Dec 2012,Nov 2012,Oct 2012,Sep 2012,Aug 2012,Jul 2012,Jun 2012,May 2012,Apr
1 China, Mainland 1264.9 1270.3 1251.9 1214.2 1220.4 1183.1 1169.9 1153.6 1155.2 1160.0 1147.0 1164.0 1164.4
2 Japan 1100.3 1114.3 1105.5 1103.9 1111.2 1117.7 1131.9 1128.5 1120.9 1119.8 1108.4 1107.2 1087.9
3 Carib Bnkng Ctrs 4/ 273.1 283.9 280.3 271.8 266.2 263.5 273.5 261.1 263.9 247.6 244.6 243.2 237.3
4 Oil Exporters 3/ 272.7 265.1 256.8 261.6 262.0 259.1 262.2 267.2 269.1 268.4 270.2 260.6 262.2
5 Brazil 252.6 257.9 256.5 254.1 253.3 255.9 254.1 251.2 259.8 256.5 244.3 245.8 245.9
ll <- readLines('allo1.txt')
i1 <- grep('Country',ll)
i2 <- grep('Grand Total',ll)
dat <- read.fwf(textConnection(ll[c(seq(i1+3,i2,1))]),
widths = c(20,-1,rep(c(7,-1),13)))
dat.h <- read.fwf(textConnection(ll[c(i1-1,i1)]),
widths = c(20,-1,rep(c(7,-1),13)))
nn <- unlist(lapply(dat.h,function(x)gsub('\\s|[*]','',toString(rev(unlist(x))))))
names(dat) <- nn
Country, 2013,Apr 2013,Mar 2013,Feb 2013,Jan 2012,Dec 2012,Nov 2012,Oct 2012,Sep 2012,Aug 2012,Jul 2012,Jun 2012,May 2012,Apr
1 China, Mainland 1264.9 1270.3 1251.9 1214.2 1220.4 1183.1 1169.9 1153.6 1155.2 1160.0 1147.0 1164.0 1164.4
2 Japan 1100.3 1114.3 1105.5 1103.9 1111.2 1117.7 1131.9 1128.5 1120.9 1119.8 1108.4 1107.2 1087.9
3 Carib Bnkng Ctrs 4/ 273.1 283.9 280.3 271.8 266.2 263.5 273.5 261.1 263.9 247.6 244.6 243.2 237.3
4 Oil Exporters 3/ 272.7 265.1 256.8 261.6 262.0 259.1 262.2 267.2 269.1 268.4 270.2 260.6 262.2
5 Brazil 252.6 257.9 256.5 254.1 253.3 255.9 254.1 251.2 259.8 256.5 244.3 245.8 245.9