【发布时间】:2014-06-27 16:46:30
【问题描述】:
我们有一个 R 程序,它过滤表中的一些数据并使用结果创建一个新表。在 Windows 和 OSX 上,程序运行并且我们的表被正确创建。但是,在我们的 Linux (Ubuntu 12.04) 服务器上,同一个 R 程序会生成一个包含垃圾数据的表。
当我们将 Linux 上产生的垃圾数据与正确的数据进行比较时,我们发现:
- 列中应包含文本值的看似任意数字
- 额外的行
我们认为问题出在编码上,但到目前为止,我们更改数据库编码的所有努力都失败了。
我们的 R 脚本使用 RMySQL 连接 MySQL 数据库、过滤内容并将其写入新表(使用 dbReadTable 和 dbWriteTable 命令)。
我们知道命令本身不是问题,因为我们能够在过滤它们之前和之后检查 data.frame - 问题在于dbWriteTable。
这两个链接似乎最接近我们问题的解决方案,但我们必须等待拉取请求通过:
- https://github.com/jeffreyhorner/RMySQL/issues/6
- https://github.com/gagern/RMySQL/commit/b0fbef105ca61d69992a2ec5a5eafde30530b8d5
这些也是相关的:
【问题讨论】:
-
没有数据样本(可能还有代码)是相当困难的......
标签: mysql linux windows r rmysql