aboutsummaryrefslogtreecommitdiffstats
path: root/sql/dawn.sql
diff options
context:
space:
mode:
Diffstat (limited to 'sql/dawn.sql')
-rw-r--r--sql/dawn.sql15
1 files changed, 6 insertions, 9 deletions
diff --git a/sql/dawn.sql b/sql/dawn.sql
index 0dc7a3fd..8d2c5b93 100644
--- a/sql/dawn.sql
+++ b/sql/dawn.sql
@@ -1055,21 +1055,18 @@ AS $$
import numpy as np
import pandas as pd
-source_list = ["BROKER", "BVAL", "IDC", "MANAGER", "MARKIT", "PB", "PRICESERVE", "PRICINGDIRECT", "REUTERS", "S&P"]
-sql_string = "SELECT identifier, date, source, mark FROM external_marks_mapped WHERE identifier = $1 order by date, source"
+source_list = ["BROKER", "BVAL", "IDC", "MANAGER", "MARKIT", "PB",
+ "PRICESERVE", "PRICINGDIRECT", "REUTERS", "S&P"]
+sql_string = """SELECT identifier, date, source, mark
+FROM external_marks_mapped WHERE identifier = $1 ORDER BY date, source"""
plan = plpy.prepare(sql_string, ["varchar"])
df = pd.DataFrame.from_records(plpy.cursor(plan, [identifier]))
df = df.groupby(['date', 'identifier', 'source']).mean().unstack(-1)
df.columns = df.columns.droplevel(level=0)
-
-for s in source_list:
- if s not in df.columns:
- df[s] = np.nan
-
-df = df[source_list].reset_index()
+df = df.reindex(columns=source_list).reset_index()
for t in (df.itertuples(index=False)):
yield [t[0], t[1]] + [None if np.isnan(v) else v for v in t[2:]]
-$$ LANGUAGE plpythonu; \ No newline at end of file
+$$ LANGUAGE plpythonu;