无法将 unicode .csv 读入 R

2024-02-01

我有一个 .csv 文件,其中包含以下数据:

"Ա","Բ"
1,10
2,20

我无法将其读入 R 以便列名像在文件中一样显示。

d <- read.csv("./Data/1.csv", fileEncoding="UTF-8")
head(d)

产生以下内容:

> d <- read.csv("./Data/1.csv", fileEncoding="UTF-8")
Warning messages:
1: In read.table(file = file, header = header, sep = sep, quote = quote,  :
  invalid input found on input connection './Data/1.csv'
2: In read.table(file = file, header = header, sep = sep, quote = quote,  :
  incomplete final line found by readTableHeader on './Data/1.csv'
> head(d)
[1] X.
<0 rows> (or 0-length row.names)

同时,在不指定 fileEncoding 的情况下执行相同操作会产生以下结果:

> d <- read.csv("./Data/1.csv")
> head(d)
  Ô. Ô²
1  1 10
2  2 20

当我运行“文件”实用程序来查找文件的编码时,它说它是 UTF-8:

Data\1.csv: UTF-8 Unicode text, with CRLF line terminators

我使用的是 RStudio,Windows 7,R 版本 2.15.2,32 位。

提前致谢。


我在这里就同一问题写了一个更长的答案:Windows 上的 R:字符编码地狱 https://stackoverflow.com/questions/18789330/r-on-windows-character-encoding-hell/28461535#28461535 .

快速回答,使用参数编码而不是 fileEncoding 应该可以解决您的第一个问题。您将无法在 RStudio 的控制台或表格视图中读取它,但您将能够在公式中使用它。

d <- read.csv("./Data/1.csv", encoding="UTF-8")
head(d)

将表保存到 UTF-8 文件中:

> test2 <- read.csv("test2.csv", header = FALSE, sep = ",", quote = "\"", dec = ".", fill = TRUE, comment.char = "", encoding = "UTF-8")
Warning message:
In read.table(file = file, header = header, sep = sep, quote = quote,  :
  incomplete final line found by readTableHeader on 'test2.csv'

这为您提供了控制台和 RStudio 视图中的外观

> test2
        V1       V2
1 <U+0531> <U+0532>
2        1       10
3        2       20

但重要的是,您可以在 R 中对其进行操作。因此,在我的例子中,可以看到脚本窗口输入 d 具有 UTF-8 编码,并且 grep 可以在表中正确找到此编码。

> Encoding("Ա")
[1] "UTF-8"
> grep("Ա", as.character(test2[1,1]))
[1] 1

您可能需要找到适合您的设置的合适的编码变体,或者可能需要更改它们。不幸的是我不确定它是在哪里完成的。

您可能无法在所有阶段都使其完美,但绝对有可能让它在 Windows 7 环境中也正常工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法将 unicode .csv 读入 R 的相关文章

  • 如何在 R 中只为直方图的一个标签着色?

    我有一个像这样的数据框 CellLines ZEB1 600MPE 2 8186 AU565 2 783 BT20 2 7817 BT474 2 6433 BT483 2 4994 BT549 3 035 CAMA1 2 718 DU447
  • R:根据元素长度从向量中删除元素

    如何根据字符串的字符数或长度从字符串向量中删除元素 df lt c asdf fweafewwf af aewfawefwef awefWEfawefawef gt df 1 asdf fweafewwf af aewfawefwef aw
  • 访问 R 工作区中的数据[重复]

    这个问题在这里已经有答案了 我是自学 R 的 可能有一些非常基本的东西我可能不熟悉 如果是这样我道歉 我正在尝试访问外部来源提供给我的数据 它作为一个工作空间出现 我的流程如下 gt ls 1 2003OHT HR gt attach 20
  • “此应用程序已请求运行时以异常方式终止它”的原因是什么?

    Visual C 运行时抛出一个常见错误 此应用程序已请求运行时以异常方式终止它 请联系应用程序的支持团队以获取更多信息 该错误消息实际上是什么意思mean 让我用一个比喻来准确地解释我的问题 如果我看到一条消息 异常 访问冲突 0xc00
  • 使用 readHTMLTable 从 https 网页读取表格

    我安装了 R 3 3 1 并使用 RStudio 0 99 903 我正在尝试从以下 URL 将表格读入 R https www fantasypros com nfl rankings consensus cheatsheets php
  • 将日期时间字符串转换为 Date 类

    我有一个带有日期时间字符列的数据框 当我使用as Date 除了少数实例之外 我的大多数字符串都被正确解析 下面的示例有望向您展示发生了什么 my attempt to parse the string to Date uses the s
  • R闪亮主面板显示样式和字体

    我正在学习闪亮的应用程序 并且有一些关于调整布局的基本问题 特别是样式和字体 希望得到指点或明确的答案 谢谢 考虑一个基本的输入输出应用程序 用户在 sidebarPanel 中输入数据 然后在 mainPanel 中反应性地输出结果 如何
  • uri 警告中缺少端口:使用 Python OpenCV cv2.VideoCapture() 打开文件时出错

    当我尝试流式传输 ipcam 时 出现了如下所示的错误 tcp 000000000048c640 uri 中缺少端口 警告 打开文件时出错 build opencv modules videoio src cap ffmpeg impl h
  • 美人鱼图:调整图表周围的空白

    我在用 Rstudio 编译的 Rmd 报告中使用了美人鱼图 在 HTML PDF 输出中 图表上方和下方有大量空白 请参见下面的示例 Header Text r library DiagrammeR mermaid graph TD cl
  • 批量插入不适用于 NULL 数据

    当我从 CSV 文件将批量数据插入到表中时 它不起作用 显示错误 第 2 行第 9 列的批量加载数据转换错误 类型不匹配或指定代码页的字符无效 csv 文件中的第 9 列值为空 我该如何处理这个问题 根据这些信息 我认为目标表的特定字段被定
  • Boost + Visual Studio 2010 + Windows 平台 SDK 7.1

    有人可以告诉我 bjam 的命令行开关或其他可以使用新的 Windows Platform SDK 7 1 工具链使用 VS2010 进行 boost 编译的东西吗 您可以在普通的视觉工作室项目中设置该选项 默认值是 v100 是平台 7
  • 删除缺失的数据值

    我删除了原始帖子 以便能够发布更大版本的数据集 实际上总共有 418 行 这是我正在进行的生存分析的数据 第一列是 ID 号 其他列标记为 V2 V20 有很多缺失的数据 用 表示 我用coxph 函数来获取以下内容 Saves survi
  • 使用 BitmapEncoder 生成时如何使 GIF 循环重复

    我能够使用 BitmapEncoder C WinRT 创建动画 gif 但是 我一直无法弄清楚如何让GIF循环回来并从头开始 没有尝试太多 因为我不确定要尝试什么 搜索了更多要在 GIF 上设置的属性 但找不到任何相关内容 好吧 终于能弄
  • R 错误:无法更改锁定绑定的值

    我试图估计无限数字流的平均值和标准差 当我运行代码时 出现错误消息 无法更改锁定绑定的值 我做了一些研究 发现这个错误与我使用全局变量有关 但我无法弄清楚 任何帮助将非常感激 在此先感谢您的帮助 define global variable
  • 如何读取 R 中的每个 .csv 文件并将其导出到单个大文件中

    你好 我有以下格式的数据 101 20130826T155649 3 1 round 0 10552 180 yellow 12002 1 round 1 19502 150 yellow 22452 1 round 2 28957 130
  • 如何使用 python 在 Windows 中禁用/启用特定 USB 端口? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想在图形窗口中创建一个切换开关 可以使用 python 禁用 启用 Windows 中的特定 USB 端口 我可以使用哪个外部命令或
  • opencv人脸检测示例

    当我在设备上运行应用程序时 应用程序崩溃并显示以下按摩 java lang UnsatisfiedLinkError 无法加载 detector based tracker findLibrary 返回 null 我正在使用 OpenCV
  • 通过 Shiny 中的串扰将 Plotly 与 DT 结合使用

    我正在编写一个应用程序来将 csv 文件读取为闪亮的并将散点图与 DT 表链接起来 我几乎遵循了 Plotly 网站上 DT 数据表上的示例 https plot ly r datatable https plot ly r datatab
  • R Leaflet Legend:colorBin-删除中断之间的小数

    我正在使用 Leaflet 库在 R 中创建交互式 HTML 地图 传说中采用的是colorBin用于创建将数据分为 6 个类别的方法 使用min values and max values 我已经定义了美国社区调查收入数据的特定范围可能落
  • R data.table fwrite 到 fread 空间分隔符并清空

    我在使用 fread 以 作为分隔符和散布的空白值时遇到问题 例如 这个 dt lt data table 1 5 1 5 1 5 make a simple table dt 3 V2 NA add a blank in the midd

随机推荐

  • Apache 和 Nginx 在一起,为什么?

    我安装了一个名为 VestaCP 的流行控制面板服务 https vestacp com https vestacp com 对于我的远程 Linux 服务器 默认情况下 它安装了 apache 和 nginx 但尽管我尽了最大努力 我仍然
  • 带有空白的表:nowrap 并且一列需要溢出:隐藏

    这是我的布局 body font 12px sans serif div1 width 750px padding top 20px padding bottom 20px background color lime table1 back
  • ARM数字转换程序

    我正在尝试编写一个程序 将数字从 ieee 转换为 TNS 大端 反之亦然 总的来说 我对 ARM 和汇编非常陌生 我没有收到错误 它只是没有按预期工作 如果有人能看到它 我将不胜感激 每一行都被注释了 这里实际上有问题的子例程是 解包 i
  • 在c#中使用公钥加密数据,在php中使用私钥解密数据

    我正在尝试在 C 中加密 JSON 字符串 并使用 OpenSSL RSA 在 PHP 中解密 以下代码是 C 语言 public static string EncryptData string data string key BEGIN
  • Node.js + mongodb 应用程序的基本架构是什么? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我已经找了很多年了 但没有运气 我在 GitHub 上找到了一些模块 但不幸的是 它们已经过时了 有谁
  • 如何使用 Mongoose Transactions 防止“给定的交易号 1 与任何正在进行的交易不匹配”?

    我正在使用 Mongoose 访问我的数据库 我需要使用事务来进行原子插入更新 95 的时间我的交易运行良好 但 5 的时间显示错误 给定的交易号 1 与任何正在进行的交易都不匹配 重现这个错误非常困难 所以我真的很想了解它来自哪里以消除它
  • 正在将消息发送到我的机器上的消息队列......错误“无效的队列路径名称”[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我正在向一
  • 如果用户将非数字字符串放入 int 字段,则自定义验证错误消息

    这个问题之前肯定已经被问过 但我认为搜索词对我来说太通用了 无法找到我正在寻找的答案 所以我会再问一次 我有一个模型int属性和范围注释 如果用户输入 int 以外的内容 验证消息将响应The value
  • 会话到期时自动重定向[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如何在会话过期时 自动 重定向页面
  • 范围更新后如何更新 angularjs 页面?

    我编写了一个捕获键盘事件的指令 并且在某些键上我更新了范围内的一些对象 这个想法是上下移动数组并显示所选行的详细信息 问题是 直到我执行另一个更新页面的操作后 页面才会更新 我怎样才能强迫这个 这是指令 LogApp directive k
  • Spark查询运行速度非常慢

    我在 AWS 上有一个集群 有 2 个从站和 1 个主站 所有实例的类型均为 m1 large 我正在运行 Spark 1 4 版本 我正在对来自红移的 400 万数据的 Spark 性能进行基准测试 我通过 pyspark shell 发
  • 我是否必须将 DB 连接/初始化放在 FCGI 循环之外才能利用 Perl 中的 FastCGI?

    假设我有一些 Perl 代码 每次命中时都会增加数据库特定行中的一列 并且我预计它会非常频繁地命中 因此我想使用 FCGI 对其进行优化 现在 我基本上将大部分代码包装在这样的内容中 while FCGI accept gt 0 code
  • 在 img 上进行 mousemove 后,Mouseup 不起作用

    我正在尝试做一个简单的拖动脚本 这个想法是在鼠标按下时保存位置 在鼠标移动时更新视图 并在鼠标抬起时停止 问题 mouseup 事件无法正常工作 看代码 var target a var pos 0 var dragging false d
  • 如何清除 Perl 哈希值

    假设我们像这样定义一个匿名哈希 my hash 然后使用哈希值 然后是时候清空或清除哈希值了 重复使用 经过一些谷歌搜索 我发现 hash and undef hash 两者都会满足我的需求 两者有什么区别 它们清空哈希的方法是否相同 ha
  • “mysqli_real_escape_string”是否足以避免 SQL 注入或其他 SQL 攻击? [复制]

    这个问题在这里已经有答案了 这是我的代码 email mysqli real escape string db con POST email psw mysqli real escape string db con POST psw que
  • 由谁决定 I/O 映射和内存映射 I/O (x86)

    在 x86 架构中 我们使用 I O 指令 例如 IN 和 OUT 来进行 I O 映射 I O 据我所知 我们在内存映射 I O 中使用 MOV 等内存指令 这一切都很好 但是谁决定使用哪种 I O 方法呢 如果我想构建自己的设备 外围设
  • JSF 2 AJAX - 重新加载整个 div (例如

    我正在使用 jsf2 并想使用它的 ajax 功能 问题 我已经见过一些ajax刷新的东西 但没有什么可以刷新整个div 我有一个 xhtml 页面 其中包含来自我的 bean 的数据 我真的不想刷新它的所有字段 刷新整个 ui inclu
  • Roslyn编译器已经集成到Mono项目中了吗?

    自从微软宣布开源 Net 以来 我一直对 C 和 Mono 很感兴趣 我想知道这个决定对 Mono 项目有多大影响 我假设现在这意味着微软不再试图关闭该项目 如果他们愿意的话 不会有任何潜在的危险 是的 罗斯林已被整合 来自文章莫诺和罗斯林
  • 错误 5:启动 Windows 服务时访问被拒绝

    当我尝试启动用 C 创建的 Windows 服务时 出现此错误 到目前为止我的代码 private ServiceHost host null public RightAccessHost InitializeComponent prote
  • 无法将 unicode .csv 读入 R

    我有一个 csv 文件 其中包含以下数据 1 10 2 20 我无法将其读入 R 以便列名像在文件中一样显示 d lt read csv Data 1 csv fileEncoding UTF 8 head d 产生以下内容 gt d lt