
import FinanceDataReader as fdr
def make_rate(code):
df = fdr.DataReader(code,'2017')
original = df[['Close']].iloc[0]
df = df[['Close']] / original -1
return df['Close']
def final_rate(code):
return make_rate(code).iloc[-1]
df = fdr.StockListing('SP500')
df = df[['Symbol','Name']].head(100)
df['rate'] = df['Symbol'].apply(final_rate)
cond = df['rate'] > -50
df = df[cond]
`
df = df.sort_values(by='rate',ascending=False).head(10)
df.set_index('Name',inplace=True)
df.plot(kind='bar')
======================================
여기서 막힙니다.
8 frames
/usr/local/lib/python3.10/dist-packages/pandas/core/indexes/base.py in _raise_if_missing(self, key, indexer, axis_name)
6128 if use_interval_msg:
6129 key = list(key)
-> 6130 raise KeyError(f"None of [{key}] are in the [{axis_name}]")
6131
6132 not_found = list(ensure_index(key)[missing_mask.nonzero()[0]].unique())
KeyError: "None of [Index(['Close'], dtype='object')] are in the [columns]"
HTTP Error 404: Not Found - symbol "BRKB" not found or invalid periods
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
<ipython-input-84-4140b44388e5> in <cell line: 18>()
16 df = df[['Symbol','Name']].head(100)
17
---> 18 df['rate'] = df['Symbol'].apply(final_rate)19
20 cond = df['rate'] > -50
8 frames
/usr/local/lib/python3.10/dist-packages/pandas/core/indexes/base.py in _raise_if_missing(self, key, indexer, axis_name)
6128 if use_interval_msg:
6129 key = list(key)
-> 6130 raise KeyError(f"None of [{key}] are in the [{axis_name}]")
6131
6132 not_found = list(ensure_index(key)[missing_mask.nonzero()[0]].unique())
KeyError: "None of [Index(['Close'], dtype='object')] are in the [columns]"
