From 702cce4feabf59aecbb03086b573f1b99d41f78e Mon Sep 17 00:00:00 2001 From: Richard Frank Date: Wed, 30 Sep 2015 20:24:37 -0400 Subject: [PATCH] MAINT: Simplified set and dict manipulations --- zipline/assets/asset_writer.py | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/zipline/assets/asset_writer.py b/zipline/assets/asset_writer.py index cc72c35d..1aeefe04 100644 --- a/zipline/assets/asset_writer.py +++ b/zipline/assets/asset_writer.py @@ -162,21 +162,21 @@ def _generate_output_dataframe(data_subset, defaults): """ # The columns provided. cols = set(data_subset.columns) - desired_cols = {col for col in defaults.keys()} + desired_cols = set(defaults) # Drop columns with unrecognised headers. - data_subset.drop(cols - (cols & desired_cols), + data_subset.drop(cols - desired_cols, axis=1, inplace=True) # Get those columns which we need but # for which no data has been supplied. - need = desired_cols - set(data_subset.columns) + need = desired_cols - cols # Combine the users supplied data with our required columns. output = pd.concat( (data_subset, pd.DataFrame( - _dict_subset(defaults, need), + {k: defaults[k] for k in need}, data_subset.index, )), axis=1, @@ -186,13 +186,6 @@ def _generate_output_dataframe(data_subset, defaults): return output -def _dict_subset(dict_, subset): - res = {} - for k in subset: - res[k] = dict_[k] - return res - - class AssetDBWriter(with_metaclass(ABCMeta)): """ Class used to write arbitrary data to SQLite database.