【发布时间】:2016-03-18 10:08:41
【问题描述】:
请有人建议将带有越南字符的数据导入 R 数据框的最佳方法,以便正确描述数据。我需要导入的数据类型包括以下列的较长版本:
Student_name
PHẠM THANH
PHẠM VĂN
NGUYỄN TUẤN
NGUYỄN VĂN
VŨ NGỌC
我尝试了许多选项,包括将数据保存为 Unicode.txt 并在指定 encoding = UTF-8 的情况下导入 R。
使用read.csv 或read.table,我会收到错误消息
在
read.table("Stu.txt", header = TRUE, encoding = "UTF-8")中: 第 1 行似乎包含嵌入的空值
保存为MS-Excel文件并使用read.xlsx(包xlsx)导入,我可以正常读取数据,不指定编码我得到奇怪的输出,如图:
Student_name
1 PHẠM THANH
2 PHẠM VĂN
3 NGUYỄN TUẤN
4 NGUYỄN VĂN
5 NGUYỄN VĂN
6 VŨ NGỌC
使用read.xlsx 和encoding="UTF-8",我可以得到 UTF-8 翻译,但没有十六进制代码,所以输出的名称包含在小于和
大于号 PH M THANH 等等,不带引号。
我正在通过 RStudio,版本 0.99.467,使用 Windows 7 操作系统运行 R。
谢谢。
【问题讨论】:
-
所以您是说您的 .xlsx 文件是 XML,通常是隐含的 UTF8 编码而没有 BOM,并且您查看了 .xlsx 内部并且您知道指定的 XML 字符集是什么?您是说您的问题是 R 问题,还是您的问题是 Excel 问题?您应该准确说出 xlsx 文件中的内容以及导致您认为您遇到 R 问题的原因。
-
.xlsx 文件是默认的 .xlsx。我还将该列分别保存为 Unicode .txt 文件和 .csv 文件。我可以在记事本或 MS-Excel 中打开该文件,并正确描述字符。我什至可以将该列复制并粘贴到我的 RStudio 脚本窗口中并使用 textConnection 进行阅读,但问题仍然存在,因此我需要向 R 提供的命令肯定是一个问题,以充分解码字符。
-
你明白我说的吗?您知道如何检查文件并确定其实际编码吗?
-
恐怕我也不明白你说的和你的问题。也许下面的例子会解释.library(data.table) toread