forked from ghazi-arman/dfs-lineup-generator
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCorrelationMatrix.py
45 lines (41 loc) · 1.14 KB
/
CorrelationMatrix.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import os
import sys
import csv
import pandas as pd
score_rows = {
"nba": 28,
"nfl": 35,
"nhl": 24
}
directory = "./{}/inputs/{}/".format(sys.argv[1].lower(), sys.argv[2])
sub_directories = [f.path for f in os.scandir(directory) if f.is_dir()]
players = {}
for dir in sub_directories:
with open(dir+"/players.csv",'rt') as f:
data = csv.reader(f)
count = 0
for row in data:
if count == 0:
count += 1
continue
else:
name = row[0]
if name in players:
scores = players[name]
scores[dir] = row[score_rows[sys.argv[1].lower()]]
players[name] = scores
else:
scores = {}
scores[dir] = row[score_rows[sys.argv[1].lower()]]
players[name] = scores
scores_table = pd.DataFrame(columns=(players.keys()))
for dir in sub_directories:
scores = []
for key in players.keys():
if dir in players[key] and players[key][dir] != "":
scores.append(float(players[key][dir]))
else:
scores.append(0.0)
scores_table.loc[dir] = scores
correlation_matrix = scores_table.corr()
correlation_matrix.to_csv(directory+"correlation.csv")