2

我有一个制表符分隔的文本文件,其中包含包含空格的字符串名称。它是 python 例程的输出。文本文件看起来像这样,带有隐藏的 '\t' 字符。

Mother's Day    Breakfast in Bed    Breakfast in Bed    Arkadia Tea Chai Spice 240g 6.69    False
Mother's Day    Breakfast in Bed    Breakfast in Bed    Coles Crumpets 6 pack   2.29    False
Mother's Day    Entertainment   Entertainment   4 Ingredients Book 1 by Kim McCosker & Rachael Bermingham 1 each    14.00   False
Pantry  Baking  Cake Mix    White Wings Red Velvet Cake 425g    4.61    False

由于文件是制表符分隔的,因此 excel - 例如 - 识别出有六列 - 这是我想要的。

我希望它在 R 中的一个有六列的表中,这些列被视为因素。

我已经阅读了文档,似乎指定分隔符应该可以工作 - 但是我无法让以下工作:

fullSurvey <- read.table(file="C:/1.txt", check.names=FALSE, header=FALSE, sep="\t", stringsAsFactors=TRUE)

它返回:

Error in scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings,  : 
line 2 did not have 15 elements

这在R中可能吗?

4

1 回答 1

1

(将评论移至答案以希望将其标记为已解决)。

通常,当您的输入是制表符分隔时,您可以尝试使用read.delim,与read.csvcsv 文件一样,它通常具有合理的默认值read.table.

当您的数据包含撇号、单引号或双引号时,您可能需要指定用于引用字符的值,或指定quote = ""保留嵌入的引号。

于 2014-12-25T13:52:55.637 回答