すべての値とすべてを見つけました。ソートを試みましたが、一緒にではなく別々にソートしました。私は年単位でソートしたいが、成績はちょうど年の値に従うべきだ。しかし、私がソート(年)をするとき、それはグレードをそのまま残して、年を並べ替えるだけです。2つの異なる配列から値をソート
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
問題は、2つの_independent_データ構造体を返すことです。返された 'years'と' average_grades'は、それらを返すときには関係しません。 – Unapiedra