Skip to content

Commit 7ff399e

Browse files
authored
Merge pull request #3020 from dwaddle/fix/deprecate-inplace-pandas-3009
fix: replace deprecated inplace=True with assignment to eliminate Pandas4Warning (#3009)
2 parents 447bd09 + b64eb6e commit 7ff399e

8 files changed

Lines changed: 35 additions & 35 deletions

File tree

‎yfinance/base.py‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -739,7 +739,7 @@ def _get_earnings_dates_using_scrape(self, limit = 12, offset = 0) -> Optional[p
739739
df = df.drop(["Symbol", "Company"], axis=1)
740740

741741
# Backwards compatibility
742-
df.rename(columns={'Surprise (%)': 'Surprise(%)'}, inplace=True)
742+
df = df.rename(columns={'Surprise (%)': 'Surprise(%)'})
743743

744744
df = df.dropna(subset="Earnings Date")
745745

@@ -825,9 +825,9 @@ def _get_earnings_dates_using_screener(self, limit=12) -> Optional[pd.DataFrame]
825825
df[columns_to_update] = df[columns_to_update].astype('float64').replace(0.0, np.nan)
826826

827827
# Format the dataframe
828-
df.drop(['Event Start Date', 'Timezone short name'], axis=1, inplace=True)
829-
df.set_index('Earnings Date', inplace=True)
830-
df.rename(columns={'Surprise (%)': 'Surprise(%)'}, inplace=True) # Compatibility
828+
df = df.drop(['Event Start Date', 'Timezone short name'], axis=1)
829+
df = df.set_index('Earnings Date')
830+
df = df.rename(columns={'Surprise (%)': 'Surprise(%)'}) # Compatibility
831831

832832
self._earnings_dates[limit] = df
833833
return df

‎yfinance/calendars.py‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -282,9 +282,9 @@ def _cleanup_df(self, calendar_type: str, df: pd.DataFrame) -> pd.DataFrame:
282282
df[nan_cols] = df[nan_cols].astype("float64").replace(0.0, np.nan)
283283

284284
# Format the dataframe
285-
df.set_index(predef_cal["df_index"], inplace=True)
285+
df = df.set_index(predef_cal["df_index"])
286286
for rename_from, rename_to in predef_cal["renames"].items():
287-
df.rename(columns={rename_from: rename_to}, inplace=True)
287+
df = df.rename(columns={rename_from: rename_to})
288288

289289
for datetime_col in predef_cal["datetime_cols"]:
290290
df[datetime_col] = pd.to_datetime(df[datetime_col])

‎yfinance/multi.py‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -221,11 +221,11 @@ def _download_impl(ctx, tickers, start=None, end=None, actions=False, threads=Tr
221221
except Exception:
222222
data = _pd.concat(ctx.dfs.values(), axis=1, sort=True,
223223
keys=ctx.dfs.keys(), names=['Ticker', 'Price'])
224-
data.rename(columns=ctx.isins, inplace=True)
224+
data = data.rename(columns=ctx.isins)
225225

226226
if group_by == 'column' and isinstance(data.columns, _pd.MultiIndex):
227227
data.columns = data.columns.swaplevel(0, 1)
228-
data.sort_index(level=0, axis=1, inplace=True)
228+
data = data.sort_index(level=0, axis=1)
229229

230230
if not multi_level_index and len(tickers) == 1:
231231
data = data.droplevel(0 if group_by == 'ticker' else 1, axis=1).rename_axis(None, axis=1)

‎yfinance/scrapers/analysis.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ def _fetch_earnings_history(self, methodology) -> pd.DataFrame:
173173
df = pd.DataFrame(rows)
174174
if 'quarter' in df.columns:
175175
df['quarter'] = pd.to_datetime(df['quarter'], format='%Y-%m-%d')
176-
df.set_index('quarter', inplace=True)
176+
df = df.set_index('quarter')
177177

178178
label = _eps_methodology_label(methodology, module_data)
179179
if label is not None:

‎yfinance/scrapers/holders.py‎

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ def _parse_institution_ownership(self, data):
116116
df = pd.DataFrame(holders)
117117
if not df.empty:
118118
df["reportDate"] = pd.to_datetime(df["reportDate"], unit="s")
119-
df.rename(columns={"reportDate": "Date Reported", "organization": "Holder", "position": "Shares", "value": "Value"}, inplace=True) # "pctHeld": "% Out"
119+
df = df.rename(columns={"reportDate": "Date Reported", "organization": "Holder", "position": "Shares", "value": "Value"}) # "pctHeld": "% Out"
120120
self._institutional = df
121121

122122
def _parse_fund_ownership(self, data):
@@ -128,7 +128,7 @@ def _parse_fund_ownership(self, data):
128128
df = pd.DataFrame(holders)
129129
if not df.empty:
130130
df["reportDate"] = pd.to_datetime(df["reportDate"], unit="s")
131-
df.rename(columns={"reportDate": "Date Reported", "organization": "Holder", "position": "Shares", "value": "Value"}, inplace=True)
131+
df = df.rename(columns={"reportDate": "Date Reported", "organization": "Holder", "position": "Shares", "value": "Value"})
132132
self._mutualfund = df
133133

134134
def _parse_major_direct_holders(self, data):
@@ -140,7 +140,7 @@ def _parse_major_direct_holders(self, data):
140140
df = pd.DataFrame(holders)
141141
if not df.empty:
142142
df["reportDate"] = pd.to_datetime(df["reportDate"], unit="s")
143-
df.rename(columns={"reportDate": "Date Reported", "organization": "Holder", "positionDirect": "Shares", "valueDirect": "Value"}, inplace=True)
143+
df = df.rename(columns={"reportDate": "Date Reported", "organization": "Holder", "positionDirect": "Shares", "valueDirect": "Value"})
144144
self._major_direct_holders = df
145145

146146
def _parse_major_holders_breakdown(self, data):
@@ -149,7 +149,7 @@ def _parse_major_holders_breakdown(self, data):
149149
df = pd.DataFrame.from_dict(data, orient="index")
150150
if not df.empty:
151151
df.columns.name = "Breakdown"
152-
df.rename(columns={df.columns[0]: 'Value'}, inplace=True)
152+
df = df.rename(columns={df.columns[0]: 'Value'})
153153
self._major = df
154154

155155
def _parse_insider_transactions(self, data):
@@ -161,7 +161,7 @@ def _parse_insider_transactions(self, data):
161161
df = pd.DataFrame(holders)
162162
if not df.empty:
163163
df["startDate"] = pd.to_datetime(df["startDate"], unit="s")
164-
df.rename(columns={
164+
df = df.rename(columns={
165165
"startDate": "Start Date",
166166
"filerName": "Insider",
167167
"filerRelation": "Position",
@@ -171,7 +171,7 @@ def _parse_insider_transactions(self, data):
171171
"shares": "Shares",
172172
"value": "Value",
173173
"ownership": "Ownership" # ownership flag, direct or institutional
174-
}, inplace=True)
174+
})
175175
self._insider_transactions = df
176176

177177
def _parse_insider_holders(self, data):
@@ -187,7 +187,7 @@ def _parse_insider_holders(self, data):
187187
if "latestTransDate" in df:
188188
df["latestTransDate"] = pd.to_datetime(df["latestTransDate"], unit="s")
189189

190-
df.rename(columns={
190+
df = df.rename(columns={
191191
"name": "Name",
192192
"relation": "Position",
193193
"url": "URL",
@@ -197,7 +197,7 @@ def _parse_insider_holders(self, data):
197197
"positionDirect": "Shares Owned Directly",
198198
"positionIndirectDate": "Position Indirect Date",
199199
"positionIndirect": "Shares Owned Indirectly"
200-
}, inplace=True)
200+
})
201201

202202
df["Name"] = df["Name"].astype(str)
203203
df["Position"] = df["Position"].astype(str)

‎yfinance/scrapers/quote.py‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -572,8 +572,8 @@ def upgrades_downgrades(self) -> pd.DataFrame:
572572
if len(data) == 0:
573573
raise YFDataException(f"No upgrade/downgrade history found for {self._symbol}")
574574
df = pd.DataFrame(data)
575-
df.rename(columns={"epochGradeDate": "GradeDate", 'firm': 'Firm', 'toGrade': 'ToGrade', 'fromGrade': 'FromGrade', 'action': 'Action'}, inplace=True)
576-
df.set_index('GradeDate', inplace=True)
575+
df = df.rename(columns={"epochGradeDate": "GradeDate", 'firm': 'Firm', 'toGrade': 'ToGrade', 'fromGrade': 'FromGrade', 'action': 'Action'})
576+
df = df.set_index('GradeDate')
577577
df.index = pd.to_datetime(df.index, unit='s')
578578
self._upgrades_downgrades = df
579579
except (KeyError, IndexError):

‎yfinance/tickers.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ def download(self, period='1mo if start & end None', interval="1d",
8787

8888
if group_by == 'column':
8989
data.columns = data.columns.swaplevel(0, 1)
90-
data.sort_index(level=0, axis=1, inplace=True)
90+
data = data.sort_index(level=0, axis=1)
9191

9292
return data
9393

‎yfinance/utils.py‎

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -511,14 +511,14 @@ def auto_adjust(data):
511511
df["Adj High"] = df["High"] * ratio
512512
df["Adj Low"] = df["Low"] * ratio
513513

514-
df.drop(
514+
df = df.drop(
515515
["Open", "High", "Low", "Close"],
516-
axis=1, inplace=True)
516+
axis=1)
517517

518-
df.rename(columns={
518+
df = df.rename(columns={
519519
"Adj Open": "Open", "Adj High": "High",
520520
"Adj Low": "Low", "Adj Close": "Close"
521-
}, inplace=True)
521+
})
522522

523523
return df[[c for c in col_order if c in df.columns]]
524524

@@ -533,14 +533,14 @@ def back_adjust(data):
533533
df["Adj High"] = df["High"] * ratio
534534
df["Adj Low"] = df["Low"] * ratio
535535

536-
df.drop(
536+
df = df.drop(
537537
["Open", "High", "Low", "Adj Close"],
538-
axis=1, inplace=True)
538+
axis=1)
539539

540-
df.rename(columns={
540+
df = df.rename(columns={
541541
"Adj Open": "Open", "Adj High": "High",
542542
"Adj Low": "Low"
543-
}, inplace=True)
543+
})
544544

545545
return df[[c for c in col_order if c in df.columns]]
546546

@@ -565,7 +565,7 @@ def parse_quotes(data):
565565
"Adj Close": adjclose,
566566
"Volume": volumes})
567567
quotes.index = _pd.to_datetime(timestamps, unit="s")
568-
quotes.sort_index(inplace=True)
568+
quotes = quotes.sort_index()
569569
for c in ['Open', 'High', 'Low', 'Close', 'Adj Close']:
570570
if not is_float_dtype(quotes[c].dtype):
571571
# Only seen when Adj Close contains Infinity.
@@ -582,9 +582,9 @@ def parse_actions(data):
582582
if "dividends" in data["events"] and len(data["events"]['dividends']) > 0:
583583
dividends = _pd.DataFrame(
584584
data=list(data["events"]["dividends"].values()))
585-
dividends.set_index("date", inplace=True)
585+
dividends = dividends.set_index("date")
586586
dividends.index = _pd.to_datetime(dividends.index, unit="s")
587-
dividends.sort_index(inplace=True)
587+
dividends = dividends.sort_index()
588588
if 'currency' in dividends.columns and (dividends['currency'] == '').all():
589589
# Currency column useless, drop it.
590590
dividends = dividends.drop('currency', axis=1)
@@ -593,17 +593,17 @@ def parse_actions(data):
593593
if "capitalGains" in data["events"] and len(data["events"]['capitalGains']) > 0:
594594
capital_gains = _pd.DataFrame(
595595
data=list(data["events"]["capitalGains"].values()))
596-
capital_gains.set_index("date", inplace=True)
596+
capital_gains = capital_gains.set_index("date")
597597
capital_gains.index = _pd.to_datetime(capital_gains.index, unit="s")
598-
capital_gains.sort_index(inplace=True)
598+
capital_gains = capital_gains.sort_index()
599599
capital_gains.columns = ["Capital Gains"]
600600

601601
if "splits" in data["events"] and len(data["events"]['splits']) > 0:
602602
splits = _pd.DataFrame(
603603
data=list(data["events"]["splits"].values()))
604-
splits.set_index("date", inplace=True)
604+
splits = splits.set_index("date")
605605
splits.index = _pd.to_datetime(splits.index, unit="s")
606-
splits.sort_index(inplace=True)
606+
splits = splits.sort_index()
607607
splits["Stock Splits"] = splits["numerator"] / splits["denominator"]
608608
splits = splits[["Stock Splits"]]
609609

0 commit comments

Comments
 (0)