将列表插入到每行的数据框中

时间:2016-07-05 17:55:59

标签: python arrays list pandas dataframe

我正在尝试写入数据框的一组指标分类。 到目前为止,我已经能够将精度,召回率和f1分数写入数据帧。但是,我想添加另一个名为models的列,它具有精度,召回和f1-score的相应模型。

data = ((metrics.classification.precision_recall_fscore_support(clf3_expected, clf3_predicted)),
        metrics.classification_report(clf2_expected, clf2_predicted), 
        metrics.classification_report(clf1_expected, clf1_predicted))
data = np.array(data)
  

array([(array([0.86564351,0.86185948]),array([0.86008561,   0.86735779]),数组([0.86285561,0.86459989]),数组([3738,3762],dtype = int64)),          '精确召回f1-score支持\ n \ n 0 0.85 0.85 0.85 3738 \ n 1 0.85
  0.85 0.85 3762 \ n \ navg /总计0.85 0.85 0.85 7500 \ n',          '精确召回f1-得分支持\ n \ n 0 0.71 0.72 0.71 3738 \ n 1 0.71
  0.71 0.71 3762 \ n \ navg / total 0.71 0.71 0.71 7500 \ n'],dtype = object)

model_lists = ['decision', 'bayes', 'log']

for row in concatenated.iterrows():
    concatenated.model = i
concatenated

这是我创建df的地方:

columns = ['pos', 'neg',]
df = pd.DataFrame(data, columns = columns)
df = pd.DataFrame(data, columns = columns )

df['model'] = 0
df

enter image description here 然后我按精度,召回和支持对其进行分组,并创建模型列

pieces = [df[:3], df[:3], df[:3]]
concatenated = pd.concat(pieces, keys=['precision', 'recall', 'suport', "model"])
concatenated

然后,我想将相应的模型名称插入到正确的行中,但是,我只能让它写入列表中的最后一项,即登录到最后一列。

model_lists = ['decision', 'bayes', 'log']

for row in concatenated.iterrows():
    concatenated.model = i
concatenated

enter image description here

而不是' log'在整个专栏中,它应该是“决定”。 ,'贝叶斯'和' log'然后重复直到数据帧结束。

0 个答案:

没有答案