0
私のPandas DataFrameは、機械学習問題の可能なすべてのクラスを列に保持しますが、エントリに割り当てられた値は確率の意味を持ちます。予想されるクラスに応じてPandas Dataframeに追加する方法
次に、電車の場合のクラス予測を行う機械学習モデルがあります。
は今、私は効率的にパンダDATAFRAMEに予測したクラスに依存して追加することができますどのように予測したクラスに割り当てられた列の値が1
を取得し、すべての予測、新しい行を追加したいですエレガントな方法?
これは私が何をしたいんいくつかの最小限のサンプルコードです:
import pandas as pd
import numpy as np
predictions = np.array(['classB', 'classB', 'classC'])
data = pd.DataFrame(columns=['classA', 'classB', 'classC'])
print "Data before:"
print data
for i in range(len(predictions)):
if predictions[i] == "classA":
data.loc[i] = [1, 0, 0]
if predictions[i] == "classB":
data.loc[i] = [0, 1, 0]
if predictions[i] == "classC":
data.loc[i] = [0, 0, 1]
print "Data after:"
print data
を入力:
Empty Dataframe, prediction = ['classB', 'classB', 'classC']
出力:
classA classB classC
0 0.0 1.0 0.0
1 0.0 1.0 0.0
2 0.0 0.0 1.0
感謝を! – johannesmik