我有形式的數據:驗證python腳本的
submission #,scores
882,"Overall evaluation: 1
Invite to interview: 1
Strength or novelty of the idea (1): 4
Strength or novelty of the idea (2): 4
Strength or novelty of the idea (3): 3
Use or provision of open data (1): 3
Use or provision of open data (2): 3
""Open by default"" (1): 4
""Open by default"" (2): 4
Value proposition and potential scale (1): 2
Value proposition and potential scale (2): 1
Market opportunity and timing (1): 3
Market opportunity and timing (2): 1
Triple bottom line impact (1): 2
Triple bottom line impact (2): 2
Triple bottom line impact (3): 4
Knowledge and skills of the team (1): 1
Knowledge and skills of the team (2): 2
Capacity to realise the idea (1): 1
Capacity to realise the idea (2): 3
Capacity to realise the idea (3): 1
Appropriateness of the budget to realise the idea: 3"
882,"Overall evaluation: 2
Invite to interview: 3
Strength or novelty of the idea (1): 4
Strength or novelty of the idea (2): 1
Strength or novelty of the idea (3): 4
Use or provision of open data (1): 4
Use or provision of open data (2): 3
""Open by default"" (1): 3
""Open by default"" (2): 4
Value proposition and potential scale (1): 4
Value proposition and potential scale (2): 4
Market opportunity and timing (1): 4
Market opportunity and timing (2): 4
Triple bottom line impact (1): 4
Triple bottom line impact (2): 1
Triple bottom line impact (3): 3
Knowledge and skills of the team (1): 3
Knowledge and skills of the team (2): 2
Capacity to realise the idea (1): 2
Capacity to realise the idea (2): 3
Capacity to realise the idea (3): 3
Appropriateness of the budget to realise the idea: 3"
883,"Overall evaluation: 1
Invite to interview: 1
Strength or novelty of the idea (1): 4
Strength or novelty of the idea (2): 3
Strength or novelty of the idea (3): 4
Use or provision of open data (1): 2
Use or provision of open data (2): 3
""Open by default"" (1): 3
""Open by default"" (2): 3
Value proposition and potential scale (1): 2
Value proposition and potential scale (2): 1
Market opportunity and timing (1): 3
Market opportunity and timing (2): 1
Triple bottom line impact (1): 1
Triple bottom line impact (2): 4
Triple bottom line impact (3): 2
Knowledge and skills of the team (1): 3
Knowledge and skills of the team (2): 3
Capacity to realise the idea (1): 1
Capacity to realise the idea (2): 3
Capacity to realise the idea (3): 4
Appropriateness of the budget to realise the idea: 3"
883,"Overall evaluation: 1
Invite to interview: 1
Strength or novelty of the idea (1): 2
Strength or novelty of the idea (2): 2
Strength or novelty of the idea (3): 1
Use or provision of open data (1): 2
Use or provision of open data (2): 1
""Open by default"" (1): 3
""Open by default"" (2): 2
Value proposition and potential scale (1): 2
Value proposition and potential scale (2): 2
Market opportunity and timing (1): 2
Market opportunity and timing (2): 2
Triple bottom line impact (1): 1
Triple bottom line impact (2): 2
Triple bottom line impact (3): 2
Knowledge and skills of the team (1): 4
Knowledge and skills of the team (2): 2
Capacity to realise the idea (1): 2
Capacity to realise the idea (2): 2
Capacity to realise the idea (3): 3
Appropriateness of the budget to realise the idea: 3"
885,"Overall evaluation: 2
Invite to interview: 1
Strength or novelty of the idea (1): 2
Strength or novelty of the idea (2): 2
Strength or novelty of the idea (3): 2
Use or provision of open data (1): 2
Use or provision of open data (2): 2
""Open by default"" (1): 2
""Open by default"" (2): 2
Value proposition and potential scale (1): 1
Value proposition and potential scale (2): 2
Market opportunity and timing (1): 2
Market opportunity and timing (2): 1
Triple bottom line impact (1): 2
Triple bottom line impact (2): 1
Triple bottom line impact (3): 1
Knowledge and skills of the team (1): 4
Knowledge and skills of the team (2): 2
Capacity to realise the idea (1): 1
Capacity to realise the idea (2): 3
Capacity to realise the idea (3): 2
Appropriateness of the budget to realise the idea: 3"
和下面的python腳本:
map = {}
lines=open("new_data.csv",'r').read().splitlines()
for l in lines:
data = l.split('"Overall evaluation:')
if len(data) == 2:
if data[0] not in map.keys():
map[data[0]] = (0,0)
map[data[0]] = (map[data[0]][0]+int(data[1]) , map[data[0]][1]+1)
for x, y in map.items():
print(str(x) + ", " + str(y[0]/y[1]))
什麼,我認爲正在發生的事情是,它需要的兩個Overall evaluation:
數字的平均值並將其輸出到提交號碼旁邊,是否正確?
順便說一句,如果你的'map'是一個'collections.defaultdict(lambda:(0,0))',那麼讀起來會更容易一些 - 這樣你就可以用條件邏輯來處理未跟蹤的情況你的循環。 –
@CharlesDuffy CR想要代碼OP寫入,而不是代碼他們想要解釋給他們 – jonrsharpe
(使用變量名'map'也是不幸的,因爲它與內置函數衝突)。 –