kzm*_*yrk 4 r character utf-8 readr
尝试使用read_csv2()fromreadr包读取 csv 文件。
问题是read_csv2()无法正确识别字符,而 R 的默认值read.csv2成功识别。
例如:
原始值: KOZYATA?I
如何read_csv2()识别:KOZYATA<'d0'>I
我检查了帮助文件并尝试了下面列出的编码;但是无法实现。
第一次尝试:以错误的字符结束
my_df <- read_csv2("my_path/my_file.csv")
Run Code Online (Sandbox Code Playgroud)
第二次尝试:手动说明编码。
my_df <- read_csv2("my_path/my_file.csv", locale(encoding = "UTF-8"))
Error: `col_names` must be TRUE, FALSE or a character vector
Run Code Online (Sandbox Code Playgroud)
第三次尝试:由于上述错误消息而添加到第二次尝试中。
my_df <- read_csv2("my_path/my_file.csv", locale(encoding = "UTF-8"), col_names = TRUE, col_types = NULL)
Run Code Online (Sandbox Code Playgroud)
这个不会出错,但仍然不能正确识别字符。
怎么做?如果需要任何其他信息,请告诉我。提前致谢。
@Amit,感谢您的建议。
在 RStudio 上,我选择了File\Save with Encoding...来查看一些可用的编码选项。
在编码列表顶部的弹出窗口中,它显示了系统默认值(我的电脑是 CP1254)。然后将它传递给下面的编码参数并且它起作用了!
my_df <- read_csv2("my_path/my_file.csv", locale(encoding = "**CP1254**"), col_names = TRUE, col_types = NULL)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4504 次 |
| 最近记录: |