我有一個帶字節順序標記(U + FEFF)的文本文件。我正在嘗試讀取R中的文件。是否可以避免字節順序標記?使用BOM讀取一個UTF-8文本文件
函數fread
(從data.table
包)讀取文件,但在第1可變名稱的開始處添加ļ»æ
:
> names(frame_pers)[1]
[1] "ļ»æreg_date"
同樣是與read.csv
功能。
目前我做了一個從第一列名稱中刪除BOM的功能,但我相信應該有一種方法來自動去除BOM。
remove.BOM <- function(x) setnames(x, 1, substring(names(x)[1], 4))
> names(frame_pers)[1]
[1] "ļ»æreg_date"
> remove.BOM(frame_pers)
> names(frame_pers)[1]
[1] "reg_date"
我使用的是本地編碼爲R對話:
> options("encoding" = "")
> options("encoding")
$encoding
[1] ""
同樣不是爲我工作。從notepad ++複製粘貼時,我的原始數據看起來像是「31.1」,但是在R中fread將它分成2列,並用read.csv作爲前綴「」(使用as.is = TRUE)。我使用autohotkey和convert2txt從GUI顯示獲取ocr,並將其寫入文件。這給了我一個問題,即「31.2」變成了「我的.331」 – EngrStudent