我有几个具有多个数据点的.txt文件,它们没有正确的头格式,我正在尝试取出不必要的数据,以便R可以读取数据。需要移除某些部件,并且需要确定X和Y列。下面是文本文件读取内容的示例,其中six指的是X组件,siy指的是Y组件:
{
"description": "",
"name": "1ml",
"references": [
{
"siclassids": [
],
"siname": "1ml",
"sipoints": [
{
"six": 397.32000732421875,
"siy": 0.8571428656578064
},
{
"six": 400.20001220703125,
"siy": 0.75
},
{
"six": 403.08999633789062,
"siy": 0.60000002384185791在几个不同的文件中有数百个这样的数据点,有没有办法让r来组织这些数据点,并以图形的形式读出数据?
谢谢!
发布于 2019-07-03 23:45:45
您可以使用正则表达式。grep标识有趣的行。gsub查找"x"和"y"以及相应的值,并使用,将它们组合在一起。strsplit在逗号处拆分成一个列表。
l <- readLines("dp.txt")
l <- setNames(do.call(rbind.data.frame,
strsplit(gsub(".+si(.)\\D*(\\d+\\.\\d+).+", "\\1, \\2",
l[grep("\\d{2,}", l)]), ",")), c("axis", "coord"))
l$coord <- as.numeric(l$coord)
l
# axis coord
# 1 x 4
# 2 y 3
# 3 x 5
# 4 y 2
# 5 x 6
# 6 y 1https://stackoverflow.com/questions/56873188
复制相似问题