iteritems is deprecated and will be removed in a future version. Use .items instead. for col_name, dtype in df.dtypes.iteritems():というエラーメッセージについて
解決したいこと
pythonで株価可視化アプリ作成のさいに出てきたエラーメッセージです
直訳すると、iteritems は非推奨であり、将来のバージョンで削除される予定です。代わりに .items を使用してください。とのことですが、よくわかりません、どのように対処すればよろしいでしょうか。
col_name の場合、df.dtypes.iteritems() の dtype:
発生している問題・エラー
iteritems is deprecated and will be removed in a future version. Use .items instead. for col_name, dtype in df.dtypes.iteritems():
!pip3 install yfinance
import pandas as pd
import matplotlib.pyplot as plt
import yfinance as yf
%matplotlib inline
aapl = yf.Ticker('AAPL')
days = 20
hist = aapl.history(period=f'{days}d')
hist
hist.reset_index()
hist_msft = yf.Ticker('MSFT').history(period=f'{days}d')
hist_msft.head()
pd.concat([hist, hist_msft], axis=1).head()
hist.head(3)
hist.index
hist.index = hist.index.strftime('%d %B %Y')
hist = hist[['Close']]
hist.columns = ['aaple']
hist.head()
hist = hist.T
hist
hist.index.name = 'Name'
days = 20
hist = yf.Ticker('META').history(period = f"{days}d")
print(hist.index)
hist.index = hist.index.strftime("%d %B %Y")
def get_data(days, tickers):
df = pd.DataFrame()
for company in tickers.keys():
# company = 'facebook'
tkr = yf.Ticker(tickers[company])
hist = tkr.history(period=f'{days}d')
hist.index = hist.index.strftime('%d %B %Y')
hist = hist[['Close']]
hist.columns = [company]
hist = hist.T
hist.index.name = 'Name'
df = pd.concat([df, hist])
return df
days = 20
tickers = {
'apple': 'AAPL',
'facebook': 'META',
'google': 'GOOGL',
'microsoft': 'MSFT',
'netflix': 'NFLX',
'amazon': 'AMZN'
}
df = get_data(days, tickers)
df
aapl = yf.Ticker('AAPL')
aapl.info
aapl.actions.head()
aapl.dividends.plot()
!pip3 install altair
import altair as alt
df
companies = ['apple','facebook']
data = df.loc[companies]
data
data.sort_index()
data = data.T.reset_index()
data.head()
ata = pd.melt(data, id_vars=['Date']).rename(
columns={'value': 'Stock Prices(USD)'}
)
data
data = pd.melt(data, id_vars=['Date']).rename(
columns={'value': 'Stock Prices(USD)'}
)
data
ymin, ymax = 250, 300
chart = (
alt.Chart(data)
.mark_line(opacity=0.8, clip=True)
.encode(
x="Date:T",
y=alt.Y("Stock Prices(USD):Q", stack=None, scale=alt.Scale(domain=[ymin, ymax])),
color='Name:N'
)
)
chart
追記
@PondVillege様