2017-12-10 6 views
0

JSONない私は、Pythonファイルた:analyse.py:TypeError例外:配列([0])がシリアライズ

def svm_analyze_AHE(file_name): 

    # obtain abp file 
    testdata = pd.read_csv(file_name, header=None) 
    #print testdata 
    testdata_to_transpose = testdata.iloc[:,1] 
    #print testdata_to_transpose 
    testdata = np.transpose(testdata_to_transpose) 
    testdata = testdata.reshape(1, -1) 
    #print testdata 

    # extract abp values 
    #print testdata.shape 
    leng = testdata.shape[1]-1 
    #print leng 
    #T = testdata.iloc[:,leng] 
    T = np.array(testdata[:,0:leng]) 
    #print T 
    testdata = np.array(T) 

    # once model is stored, then retrieve it 
    model = joblib.load('svm-model-0.pkl') 

    # make predictions 
    predicted = model.predict(testdata) 

    return predicted 

変数は、JSONのserialisableない戻る[0]を "予想しました"。これをどうやって修正するのですか?

答えて

2

[0.]は、JSONシリアル化可能である:

>>> json.dumps([0.]) 
'[0.0]' 

あなたが質問tornadoを(しかし、あなたの質問にそれを言及していない)タグ付けされたので、私はあなたがJSONを行うに竜巻を求めていることを推測するつもりですあなたのためのシリアライゼーションと、竜巻がトップレベルのjsonオブジェクトとして配列を送ることを拒否しているという事実にぶつかります。これは、クロスサイトセキュリティの脆弱性documented hereに関する懸念が原因です。推奨される回避策は、最上位レベルで送信する代わりにdictに配列をラップすることです。