从R中的原始文件中提取数据

Posted

技术标签:

【中文标题】从R中的原始文件中提取数据【英文标题】:Data extraction from a raw file in R 【发布时间】:2017-09-15 10:34:51 【问题描述】:

我需要使用 R 从原始文件中提取数据。之前有一些无用的数据,实际表从第 100 行开始。现在可以使用 read.csv(skip=99) 从该行读取数据但我想通过自动从该行开始读取来使其动态化,因为有多个文件的实际表从不同的行开始。 有用数据的第一行将从字符串“时间”开始。

任何帮助将不胜感激。 谢谢

【问题讨论】:

“原始”是文本文件还是二进制文件?由于您使用的是read.csv,我猜是文本,但要确保因为“原始”往往意味着二进制,但“非结构化”或“半结构化”更能表示 CSV 卡在字符流中。 是的,它是一个文本文件 【参考方案1】:

使用readLines 获取文本文件作为字符向量。 然后找到以“Time”开头的行并丢弃之前的元素。 您现在可以通过read.csv(text=) 将剩余部分放入数据框。 这是一个例子。

# make a dummy file
write("junk\njunk\nTime,x\n1,2\n3,4", "tmp.csv")

x <- readLines("tmp.csv")
i <- grep("^Time", x)
x <- x[i:length(x)]
read.csv(text=x)

【讨论】:

以上是关于从R中的原始文件中提取数据的主要内容,如果未能解决你的问题,请参考以下文章

如何从r中的.ini文件中提取数据?

如何从 R 中的 netCDF 文件中提取变量名?

在 C++ 中使用 libsndfile 从 WAV 文件中提取原始音频数据

从字符串中提取数字作为R中的数字或日期

我有 R 代码从一个文档中提取信息。如何为我的文件夹中的所有文档循环?

无法使用 R 中 readtext 包中的 readtext() 替换从 PDF 文件中提取的文本中的“\r\n-”