Python循环遍历lis中的每一行多个数据帧

2024-10-01 02:24:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试导出我错误分类的每条tweet。在

我使用以下代码(在线获取并调整),它使用混淆矩阵来确定哪些推文被错误分类:

misclassified_svm = []
misclassified_svm_details = []

for predicted in event_id_df.event_id:
    for actual in event_id_df.event_id:
        if predicted != actual and conf_mat_svm[actual, predicted] >= 3:
            misclassified_svm.append("'{}' predicted as '{}' : {} examples.".format(id_to_event[actual], id_to_event[predicted], 
                  conf_mat_svm[actual,predicted]))
            misclassified_svm_details.append(testing_data_svm.loc[testing_data_svm.index[(testing_data_svm.actual_event_id == actual)& (testing_data_svm.predicted_event_id == predicted)]][['actual_event_type', 'preprocessed']])

这将在列表中填充错误分类的概述。如下所示:

Overview of misclassified tweets

目的是用每个错误分类的tweet填充列表错误分类的_svm_details,这样我就能理解导致错误分类的特征。相反,它创建一个数据帧列表。如下所示:

Screenshot of variables and dataframes contained within a list

我希望最终结果是一个可以导出的变量,它包含列表中每个数据帧的每一行。在

为了清楚起见,我将使用不同的数据集运行此代码,因此我需要建议的解决方案具有灵活性,以适应列表中不同数量的数据帧和每个数据帧中不同数量的条目。在

为了完整起见,以下是我失败的尝试:

^{pr2}$

这只需创建一个包含36个条目的列表,循环0-5次6次。在


Tags: 数据代码eventid列表data错误分类
1条回答
网友
1楼 · 发布于 2024-10-01 02:24:47

与其将数据帧附加到列表中,您可以从一开始就将错误分类的_svm_details`作为一个数据帧,然后将生成的每个数据集追加到其中。在

所以你的代码应该是:

misclassified_svm = []
misclassified_svm_details = pd.DataFrame(columns=['actual_event_type', 'preprocessed'])

for predicted in event_id_df.event_id:
    for actual in event_id_df.event_id:
        if predicted != actual and conf_mat_svm[actual, predicted] >= 3:
            misclassified_svm.append("'{}' predicted as '{}' : {} examples.".format(id_to_event[actual], id_to_event[predicted], 
                  conf_mat_svm[actual,predicted]))
            misclassified_svm_details.append(testing_data_svm.loc[testing_data_svm.index[(testing_data_svm.actual_event_id == actual)& (testing_data_svm.predicted_event_id == predicted)]][['actual_event_type', 'preprocessed']])

相关问题 更多 >