Pythonでの金融データのインポートと管理
Stefan Jansen
Instructor
pd.DataFrame のリストを連結(スタック)pd.concat([amex, nasdaq, nyse])
pd.DataFrame のリストを連結(スタック)pd.concat([amex, nasdaq, nyse])
pd.DataFrame のリストを連結(スタック)pd.concat([amex, nasdaq, nyse])
amex = pd.read_excel('listings.xlsx', sheet_name='amex', na_values=['n/a'])nyse = pd.read_excel('listings.xlsx', sheet_name='nyse', na_values=['n/a'])pd.concat([amex, nyse]).info()
Int64Index: 3507 entries, 0 to 3146
Data columns (total 7 columns):
# Column Non-Null Count Dtype
-- ------ -------------- -----
0 Stock Symbol 3507 non-null object
...
amex['Exchange'] = 'AMEX' # 元の出所を示す列を追加 nyse['Exchange'] = 'NYSE'listings = pd.concat([amex, nyse])listings.head(2)
Stock Symbol ... Exchange
0 XXII ... AMEX
1 FAX ... AMEX
xls = pd.ExcelFile('listings.xlsx')exchanges = xls.sheet_names# 結合用に空のリストを作成 listings = []for exchange in exchanges: listing = pd.read_excel(xls, sheet_name=exchange) # 参照列を追加 listing['Exchange'] = exchange # DataFrame をリストへ追加 listings.append(listing)# DataFrame のリストを結合 combined_listings = pd.concat(listings)
combined_listings.info()
Int64Index: 6674 entries, 0 to 3146
Data columns (total 8 columns):
# Column Non-Null Count Dtype
-- ------ -------------- -----
0 Stock Symbol 6674 non-null object
1 Company Name 6674 non-null object
2 Last Sale 6590 non-null float64
3 Market Capitalization 6674 non-null float64
4 IPO Year 2852 non-null float64
5 Sector 5182 non-null object
6 Industry 5182 non-null object
7 Exchange 6674 non-null object
dtypes: float64(3), object(5)
Pythonでの金融データのインポートと管理