將日期轉換成周幾的形式,統計一個月內按照周幾的形式分的股票的收盤價的平均值
import numpy as np import matplotlib.pyplot as mp import datetime as dt import matplotlib.dates as md ''' 時間處理:按照周一,周二...分組統計平均值 ''' # 日期轉化函數 def dmy2wday(dmy): # 把dmy格式的字符串轉化成周幾返回 dmy = str(dmy, encoding='utf-8') d = dt.datetime.strptime(dmy, '%d-%m-%Y') d = d.date() wday = d.weekday() # 返回周幾 return wday wdays, opening_prices, highest_prices, lowest_prices, closing_prices, volumns = \ np.loadtxt('./da_data/aapl.csv', delimiter=',', usecols=(1, 3, 4, 5, 6, 7), unpack=True, dtype='f8, f8, f8, f8, f8, f8', converters={1: dmy2wday}) # converters為轉換器,運行時先執行,其中1表示時間所在的列索引號 print(wdays) ave_prices = np.zeros(5) # 存儲最終結果 for wday in range(5): ave_prices[wday] = closing_prices[wdays == wday].mean().round(2) # 保留小數點幾位 print(ave_prices)