python pandas對黃金、外匯匯率的爬蟲練習,並使用matplotlib.pyplot的函數plot, scatter做資料視覺化處理,採用numpy的統計函數,分析黃金價格波動與歐元走勢的關聯。
程式碼分成幾部份,第一部份為處理黃金價格
黃金價格繪圖
- import pandas as pd
- import numpy as np
- dfs = pd.read_html('https://rate.bot.com.tw/gold/chart/year/USD?Lang=zh-TW')
- df = dfs[0]
- df.index = pd.to_datetime(df['日期'],format = '%Y/%m/%d')
- df.sort_index(inplace=True)
- df
歐元匯率部份
- s=df[df['日期']>='2020/12/01']
- days=s['日期'].to_numpy()
- golds=s['本行買入價格'].to_numpy()
- from matplotlib import pyplot as plt
- plt.rcParams['font.family'] = ['Microsoft JhengHei']
- plt.plot(days, golds)
- plt.title("2021之黃金價格usd/oz")
- ax=plt.gca()
- ax.get_xaxis().set_visible(False)
- plt.show()
2021之EUR與黃金價格並找出相關性
- dfs = pd.read_html('https://rate.bot.com.tw/xrt/quote/l6m/EUR')
- df = dfs[0]
- df.index = pd.to_datetime(df[('掛牌日期','掛牌日期')],format = '%Y/%m/%d')
- df.sort_index(inplace=True)
- df
- s=df[df[('掛牌日期','掛牌日期')]>='2020/12/01']
- money=s[('現金匯率','本行買入')].to_numpy()
- plt.plot(days, money)
- plt.title("2021之EUR價格")
- ax=plt.gca()
- ax.get_xaxis().set_visible(False)
- plt.show()
- plt.scatter(money, golds)
- plt.title("2021之EUR與黃金價格")
- plt.show()
- print(np.corrcoef(money, golds))
- coef=np.polyfit(money, golds, 3)
- reg=np.poly1d(coef)
- reg
- plt.scatter(money, golds)
- plt.plot(money, reg(money), 'r-')
- plt.title("2021之EUR與黃金價格")
- plt.show()
沒有留言:
張貼留言