R,fread CSV - 如何保持单元格值中的换行符?
R, fread CSV - how to maintain line breaks in cell values?
我有一个 CSV 文件,我正在使用 fread
将其读入 R 脚本。结果变量是一个向量,这是我流程下一步所需要的。我的 CSV 文件中有一些值,例如 'Energy \nElectricity'
,目的是这些将成为图表的标签,在(在本例中)'Energy'
和 'Electricity'
之间有一个换行符格式化原因。
当我手动将向量编码为
myVec <- c('Energy \nElectricity')
,这工作正常并且换行符保持不变。
但是,当我使用 fread
读取数据时,生成的向量实际上是 c('Energy \nElectricity')
,即该过程插入了一个额外的转义字符并且格式丢失了。
我的问题如下:
- 有没有办法使用
fread
来维护这些换行符?
- 如果没有,我可以在我的 csv 文件中采用不同的格式吗?
- 如果没有,我可以使用
gsub
或类似的方法在文件被读入矢量后删除额外的换行符吗?
我已经尝试了各种方式来实现 gsub
(和 sub
),但他们要么摆脱了两个转义字符,例如 gsub("\\", "\", myVec)
这给出了
[1] "Energy nElectricity"
,否则他们会抛出错误。我想我错过了一些明显的东西。任何帮助表示赞赏。
如果没有人提出更好的解决方案,这就是您使用 gsub 清理它的方式:
gsub("\n", "\n", "Energy \nElectricity", fixed = TRUE)
fixed
选项忽略所有正则表达式字符,并且比 fixed = FALSE
.
快得多
我有一个 CSV 文件,我正在使用 fread
将其读入 R 脚本。结果变量是一个向量,这是我流程下一步所需要的。我的 CSV 文件中有一些值,例如 'Energy \nElectricity'
,目的是这些将成为图表的标签,在(在本例中)'Energy'
和 'Electricity'
之间有一个换行符格式化原因。
当我手动将向量编码为
myVec <- c('Energy \nElectricity')
,这工作正常并且换行符保持不变。
但是,当我使用 fread
读取数据时,生成的向量实际上是 c('Energy \nElectricity')
,即该过程插入了一个额外的转义字符并且格式丢失了。
我的问题如下:
- 有没有办法使用
fread
来维护这些换行符? - 如果没有,我可以在我的 csv 文件中采用不同的格式吗?
- 如果没有,我可以使用
gsub
或类似的方法在文件被读入矢量后删除额外的换行符吗?
我已经尝试了各种方式来实现 gsub
(和 sub
),但他们要么摆脱了两个转义字符,例如 gsub("\\", "\", myVec)
这给出了
[1] "Energy nElectricity"
,否则他们会抛出错误。我想我错过了一些明显的东西。任何帮助表示赞赏。
如果没有人提出更好的解决方案,这就是您使用 gsub 清理它的方式:
gsub("\n", "\n", "Energy \nElectricity", fixed = TRUE)
fixed
选项忽略所有正则表达式字符,并且比 fixed = FALSE
.