从R中的文件夹中读取多个以空格分隔的文本文件

时间:2015-06-03 06:04:22

标签: r import

我在文件夹中有100个space-delimited个文本文件。每个文本文件中都有一段文本。我希望在column 1File IDColumn 2作为相应文本段落的数据框中提取数据。

这是我到目前为止所尝试的但未能以所需格式提取文本段落。

lf <- list.files(path = "", pattern = "'*.txt", full.names = TRUE, recursive = TRUE, include.dirs = TRUE)
data <- lapply(lf, read.table, sep="", header=FALSE)

示例文本文件如下所示:

“是的,而且反复打电话是我打电话给我不断询问Dvr上是否有促销协议,因为我在料斗和延误方面遇到了一些问题。今天我收到另一张账单或换货料斗对Dvr来说更好。“

我得到的输出是一个列表:

[[1]]
     V1  V2  V3       V4    V5    V6 V7 V8   V9 V10 V11       V12 V13          V14 V15 V16     V17
1 Yeah, and and repeated phone calls is  I call  in  on something   I continuously ask  if there's
  V18         V19  V20   V21 V22   V23     V24  V25 V26  V27      V28  V29 V30    V31 V32 V33
1   a promotional deal going  on Dvr's because I've had some problems with the hopper and the
     V34 V35    V36 V37 V38     V39  V40 V41        V42    V43    V44    V45 V46    V47 V48 V49
1 delays and today.   I get another bill  or exchanging hopper enjoys better for Dvr's.

我希望以数据框格式获取它:

File ID         Text

file1.txt       Yeah, and and repeated phone calls...

关于我缺少什么的任何指示?

提前致谢。

1 个答案:

答案 0 :(得分:0)

试试这个:(你不想让空格作为分隔符,因为你的段落中有很多空格):

dat <- setNames( lapply(lf, read.table, sep="|", header=FALSE), lf)

选择您怀疑不在文本中的分隔符。我担心sep=""是一个糟糕的选择,因为它被解释为read.table的默认值,即“whitespace”。每个文件的条目“标题”应该是文件名。