テーブル内の一部のデータをフィルター処理し、結果を含む新しいテーブルを作成する R プログラムがあります。Windows と OSX では、プログラムが実行され、テーブルが適切に作成されます。ただし、Linux (Ubuntu 12.04) サーバーでは、同じ R プログラムがガベージ データを含むテーブルを生成します。
Linux で生成されたガベージ データを適切なデータと比較すると、次のことがわかります。
- テキスト値が必要な列の一見任意の数値
- 余分な行
問題はエンコーディングにあると考えていますが、データベースのエンコーディングを変更するためのすべての取り組みは、これまでのところ失敗しています。
この R スクリプトはRMySQL
、MySQL データベースに接続し、コンテンツをフィルター処理し、新しいテーブルに書き込みます (dbReadTable
および dbWriteTable
コマンドを使用)。コマンド自体が問題ではないことはわかっています.data.frameをフィルタリングする前後に調べることができます-問題はdbWriteTable
.
これらの 2 つのリンクは、私たちの問題の解決策に最も近いようですが、プル リクエストが通過するのを待つ必要があります。
- https://github.com/jeffreyhorner/RMySQL/issues/6
- https://github.com/gagern/RMySQL/commit/b0fbef105ca61d69992a2ec5a5eafde30530b8d5
また、これらも関連しています。