交互式爱情
这是一种使用itertools.groupby()and将数据整理到数据帧中的方法pandas:from itertools import groupbyimport pandas as pdwith open('test.txt', 'r') as f: chunks = [list(group) for k, group in groupby(f.readlines(), lambda x: x=='\n') if not k]chunks = [dict([tuple(i.strip().split(': ')) for i in chunk]) for chunk in chunks]df = pd.DataFrame(chunks).astype(float)返回: Accuracy Error Rate Not Classified Total time numIters numSurvivors popSize \0 96.84 3.16 0.00 5.367 100 0 1000 1 96.84 3.16 0.00 4.472 100 0 1000 2 92.11 7.89 0.00 4.46 100 0 1000 probCrossover probMutation tournamentSize 0 0.9 0.1 10 1 0.9 0.1 10 2 0.9 0.1 10 然后,您可以轻松地计算平均值,如下所示:df[['Accuracy','Error Rate','Not Classified','Total time']].mean()返回:Accuracy 95.263333Error Rate 4.736667Not Classified 0.000000Total time 4.766333dtype: float64