-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathtest.py
39 lines (33 loc) · 1.1 KB
/
test.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
import model
import calc as c
import util
import sys
import pandas as pd
from scipy.stats import pearsonr
from collections import defaultdict
def main(cat_name, proxy):
cat = util.get_catalog(cat_name)
df = cat['dat']
print "num galaxies: ", len(df)
data_dir = cat['dir']
fname = data_dir + proxy + '.csv'
print 'reading from: ', fname
density = pd.read_csv(fname, header=None)
print "num entries: ", len(density)
df[proxy] = density.values
df_train, df_test, m = model.trainRegressor(df, cat['box_size'], ['mstar', proxy])
r_value = pearsonr(df_test['pred'], df_test['ssfr'])[0]
print "Correlation Coefficient is: ", r_value
#TODO: Add a lock here
try:
stat_dict = util.load_data('statistics.pckl', data_dir)
except:
stat_dict = defaultdict(dict)
if not stat_dict['pearsonr'].has_key(proxy):
stat_dict['pearsonr'][proxy] = []
stat_dict['pearsonr'][proxy].append(r_value)
util.dump_data(stat_dict, 'statistics.pckl', data_dir)
if __name__ == "__main__":
cat = sys.argv[1]
proxy = sys.argv[2]
main(cat, proxy)