From 01cebdb09533e24352154669951e3646790a311f Mon Sep 17 00:00:00 2001 From: Hubedge <13092800+Hubedge@users.noreply.github.com> Date: Sun, 24 Apr 2022 14:21:07 +0800 Subject: [PATCH 1/3] Fixed pandas FutureWarning `FutureWarning: Passing a set as an indexer is deprecated and will raise in a future version. Use a list instead.` --- scripts/data_collector/yahoo/collector.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/data_collector/yahoo/collector.py b/scripts/data_collector/yahoo/collector.py index d57a3057b8..5affd18a91 100644 --- a/scripts/data_collector/yahoo/collector.py +++ b/scripts/data_collector/yahoo/collector.py @@ -404,7 +404,7 @@ def normalize_yahoo( .index ) df.sort_index(inplace=True) - df.loc[(df["volume"] <= 0) | np.isnan(df["volume"]), set(df.columns) - {symbol_field_name}] = np.nan + df.loc[(df["volume"] <= 0) | np.isnan(df["volume"]), list(set(df.columns) - {symbol_field_name})] = np.nan change_series = YahooNormalize.calc_change(df, last_close) # NOTE: The data obtained by Yahoo finance sometimes has exceptions From 4fca5d8ae2f0d06824a3c010cfc50c8788300680 Mon Sep 17 00:00:00 2001 From: Hubedge <13092800+Hubedge@users.noreply.github.com> Date: Sun, 24 Apr 2022 14:41:29 +0800 Subject: [PATCH 2/3] fixed another pandas FutureWarning ``` scripts/data_collector/index.py:228: FutureWarning: The frame.append method is deprecated and will be removed from pandas in a future version. Use pandas.concat instead. new_df = new_df.append(_tmp_df, sort=False) ``` --- scripts/data_collector/index.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/data_collector/index.py b/scripts/data_collector/index.py index a23614b413..caaaee53af 100644 --- a/scripts/data_collector/index.py +++ b/scripts/data_collector/index.py @@ -225,7 +225,7 @@ def parse_instruments(self): ] = _row.date else: _tmp_df = pd.DataFrame([[_row.symbol, self.bench_start_date, _row.date]], columns=instruments_columns) - new_df = new_df.append(_tmp_df, sort=False) + new_df = pd.concat([new_df, _tmp_df], sort=False) inst_df = new_df.loc[:, instruments_columns] _inst_prefix = self.INST_PREFIX.strip() From 4c8a638c68d21cddc3f29934a6f4920676c76c87 Mon Sep 17 00:00:00 2001 From: Hubedge <13092800+Hubedge@users.noreply.github.com> Date: Sun, 24 Apr 2022 15:01:26 +0800 Subject: [PATCH 3/3] fixed more pandas futurewarnings --- qlib/contrib/report/analysis_position/parse_position.py | 4 ++-- qlib/contrib/report/analysis_position/risk_analysis.py | 2 +- scripts/data_collector/base.py | 2 +- scripts/data_collector/yahoo/collector.py | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/qlib/contrib/report/analysis_position/parse_position.py b/qlib/contrib/report/analysis_position/parse_position.py index 1373d902f0..1a89862f3d 100644 --- a/qlib/contrib/report/analysis_position/parse_position.py +++ b/qlib/contrib/report/analysis_position/parse_position.py @@ -68,9 +68,9 @@ def parse_position(position: dict = None) -> pd.DataFrame: if not _trading_day_sell_df.empty: _trading_day_sell_df["status"] = -1 _trading_day_sell_df["date"] = _trading_date - _trading_day_df = _trading_day_df.append(_trading_day_sell_df, sort=False) + _trading_day_df = pd.concat([_trading_day_df, _trading_day_sell_df], sort=False) - result_df = result_df.append(_trading_day_df, sort=True) + result_df = pd.concat([result_df, _trading_day_df], sort=True) previous_data = dict( date=_trading_date, diff --git a/qlib/contrib/report/analysis_position/risk_analysis.py b/qlib/contrib/report/analysis_position/risk_analysis.py index 31de152dd1..9bb53cc8ac 100644 --- a/qlib/contrib/report/analysis_position/risk_analysis.py +++ b/qlib/contrib/report/analysis_position/risk_analysis.py @@ -85,7 +85,7 @@ def _get_monthly_risk_analysis_with_report(report_normal_df: pd.DataFrame) -> pd # _m_report_long_short, pd.Timestamp(year=gp_m[0], month=gp_m[1], day=month_days), ) - _monthly_df = _monthly_df.append(_temp_df, sort=False) + _monthly_df = pd.concat([_monthly_df, _temp_df], sort=False) return _monthly_df diff --git a/scripts/data_collector/base.py b/scripts/data_collector/base.py index d3b7ad57ab..b06a3e292c 100644 --- a/scripts/data_collector/base.py +++ b/scripts/data_collector/base.py @@ -170,7 +170,7 @@ def save_instrument(self, symbol, df: pd.DataFrame): df["symbol"] = symbol if instrument_path.exists(): _old_df = pd.read_csv(instrument_path) - df = _old_df.append(df, sort=False) + df = pd.concat([_old_df, df], sort=False) df.to_csv(instrument_path, index=False) def cache_small_data(self, symbol, df): diff --git a/scripts/data_collector/yahoo/collector.py b/scripts/data_collector/yahoo/collector.py index 5affd18a91..6c5fe44ee5 100644 --- a/scripts/data_collector/yahoo/collector.py +++ b/scripts/data_collector/yahoo/collector.py @@ -245,7 +245,7 @@ def download_index_data(self): _path = self.save_dir.joinpath(f"sh{_index_code}.csv") if _path.exists(): _old_df = pd.read_csv(_path) - df = _old_df.append(df, sort=False) + df = pd.concat([_old_df, df], sort=False) df.to_csv(_path, index=False) time.sleep(5)