我们有一个R程序可以过滤表中的一些数据并创建一个包含结果的新表。在Windows和OSX上,程序运行并正确创建表。但是,在我们的Linux(Ubuntu 12.04)服务器上,同一个R程序生成一个包含垃圾数据的表。
当我们将Linux上生成的垃圾数据与正确的数据进行比较时,我们发现:
我们认为这个问题与编码有关,但到目前为止,我们改变数据库编码的所有努力都失败了。
我们的R脚本使用RMySQL
连接MySQL数据库,过滤内容,并将其写入新表(使用dbReadTable
和dbWriteTable
命令)。
我们知道命令本身不是问题,因为我们能够在过滤它们之前和之后检查data.frame - 问题在于dbWriteTable
。
这两个链接似乎最接近我们问题的解决方案,但我们必须等待拉取请求通过:
答案 0 :(得分:1)
根据过去的经验,我会建议dbWriteTable
这不是问题;
甚至不是编码问题!
编写data.frame时,您可能有stringsAsFactors = T
,
这些数字是因子数字。