关联到一个新的 CSV 文件中

Correlation's into a new CSV file

我有一百个 CSV 文件:

Merge_Prediction_Groundtruth_Speed1.0_Buffer100.csv
Merge_Prediction_Groundtruth_Speed1.0_Buffer200.csv
Merge_Prediction_Groundtruth_Speed1.0_Buffer300.csv
Merge_Prediction_Groundtruth_Speed2.0_Buffer100.csv
Merge_Prediction_Groundtruth_Speed2.0_Buffer200.csv
Merge_Prediction_Groundtruth_Speed2.0_Buffer300.csv
...............

所有 CSV 的结构数据如下所示:

BS      Prediction  Ground truth
BS1-BS1  0          0
BS1-BS2  0          2
BS1-BS3  2         35
BS1-BS4  0          0
BS1-BS5  0          0
BS1-BS6  0          2
BS1-BS7  0          0
BS1-BS8  0          2
BS1-BS9  0          0
BS2-BS1  0          1
...............

我想分析预测列和ground truth列之间的相关性。 我使用了这段代码:

df['Prediction'].corr(df['Ground truth'])

如果我一一分析,那需要很长时间。 是否可以根据文件的最后一个标题分析一次相关性并同时构建到一个 CSV 文件中? 我的预期结果如下所示:

Files               Correlation
Speed1.0_Buffer100  0.65
Speed1.0_Buffer200  0.51
Speed1.0_Buffer300  0.73
Speed2.0_Buffer100  0.36
Speed2.0_Buffer200  0.59
Speed2.0_Buffer300  0.44
...............

提前致谢。

您可以在您的文件夹中读取 csv 文件

l=['Merge_Prediction_Groundtruth_Speed1.0_Buffer100.csv',
'Merge_Prediction_Groundtruth_Speed1.0_Buffer200.csv'
...]

喜欢:

d={x: pd.read_csv(x) for x in l }

然后使用 concatgroupby

pd.concat(d).groupby(level=0).apply(lambda x : x['Prediction'].corr(x['Groundtruth']))