回答編集履歴
1
全面改訂。python2.7でないと動作しない旨を追記。
answer
CHANGED
@@ -1,5 +1,13 @@
|
|
1
|
+
### 追記
|
2
|
+
Rpredict.pyに`#tested on python 2.7`と記載されおり、文字通りpython2系でしかうまく動作できません。
|
1
|
-
|
3
|
+
python3.xでは後述のsqlite型変換がうまくいかずエラーとなるようです。
|
2
4
|
|
5
|
+
※このプログラム自体は2001年に作成されたもののようです。python3.xで動かないのも納得。
|
6
|
+
|
7
|
+
python2系をインストールし、そちらの環境で実行してみてください。何も修正せずエラーなく実行できることを確認しました(python 2.7.17)
|
8
|
+
|
9
|
+
### python 3.x で実行できない原因の推測
|
10
|
+
|
3
11
|
- バイナリデータ(=文字列としてエンコードできるデータではない)が入っているblob型の`ann-bin`が変にTEXTとして推定されてしまいfetch時にエラーが発生する
|
4
12
|
|
5
13
|
`ann-bin`は先頭数十バイト分がascii文字なので、これが原因でライブラリ側にTEXT型と推定されてしまっているのかもしれませんが、全く同じデータを別テーブルに入れてSELECTするとbytes扱いになったりするので条件がよくわかりません。
|