我已經找到了所有的值和所有的東西,我嘗試了排序,但它是分開排序而不是一起排序的。我想按年分類,分數應該遵循年的價值。然而,當我做分類(年)時,它只會分類幾年,留下成績。對來自兩個不同陣列的數值進行排序
打開文件時, 它會給我是這樣的:
Year,Grade
2000,84
2001,34
2002,82
2012,74
2008,90
等等。所以我計算了平均值和一切。
years, average_grades = [],[]
avg = []
d = {}
with open(file,'r') as f:
next(f)
for line in f:
year, grade = (s.strip() for s in line.split(','))
if year in d:
d[year][0] += int(grade)
d[year][1] += 1
else:
d[year] = [int(grade),1]
for year, grades in d.items():
years.append(str(year))
average_grades.append(float(grades[0])/grades[1])
return years, average_grades
沒有排序,它會給我與此類似:
2001 74.625
2006 72.241
2012 70.875
2017 69.1981
2005 72.5
2008 71.244
2014 73.318
2004 72.1
2007 72.88
2000 73.1
With years.sort(), it would give me similar to this:
2000 74.625
2001 72.241
2002 70.875
2003 69.1981
2004 72.5
2005 71.244
2006 73.318
2007 72.1
所以那種只會工作多年,但不會做的成績。 這個問題一直困擾着我很長一段時間。我不打算使用熊貓。
您可以發佈數據 –
我所提供的示例數據的例子。 – Mayjunejuly
問題是你正在返回兩個_independent_數據結構。返回的'years'和'average_grades'在您返回時無關。 – Unapiedra