将多行文本块读入R中的单个向量
我有一个包含大量多行文本块的文件。我想把文件读入一个字符向量列表——每个块一个。我阅读了有关函数(如scan()、read.table()等)的文档,似乎表明行尾将结束向量。是否有一些选项或其他函数允许我指定一个分隔字符,并且在遇到该字符之前不会转到新向量?R将多行文本块读入R中的单个向量,r,multiline,read.csv,R,Multiline,Read.csv,我有一个包含大量多行文本块的文件。我想把文件读入一个字符向量列表——每个块一个。我阅读了有关函数(如scan()、read.table()等)的文档,似乎表明行尾将结束向量。是否有一些选项或其他函数允许我指定一个分隔字符,并且在遇到该字符之前不会转到新向量?Rread.csv观察csv文件的格式,因此如果您的文件以这种方式格式化,它们将被正确读取。基本上,嵌入回车符的长文本字段如果用双引号括起来,将被读取为一个字段(包括换行符)。如果文本本身有引号呢?这就是问题所在,您试图阅读的文本中嵌入的引号
read.csv
观察csv文件的格式,因此如果您的文件以这种方式格式化,它们将被正确读取。基本上,嵌入回车符的长文本字段如果用双引号括起来,将被读取为一个字段(包括换行符)。如果文本本身有引号呢?这就是问题所在,您试图阅读的文本中嵌入的引号必须替换为两个连续的引号(“”)
这里有一个例子:
以下是RFC的相关章节:
> read.csv(stringsAsFactors = FALSE, text = '
+ id, text
+ 1, Hello World
+ 2, "Hello
+ World"
+ 3, "I say ""Hello
+ World"" often"
+ ')
id text
1 1 Hello World
2 2 Hello\nWorld
3 3 I say "Hello \nWorld" often