Python股票實作(2)

更新於 發佈於 閱讀時間約 3 分鐘
在上一篇文章"Python股票實作(1)"中,我們將近期100天的資料存成csv檔。
這次要將這100個csv檔都放進資料庫內,首先要做的就是新增一個檔案,
檔案名稱為"TWStock.db",把它放進跟csv檔一樣的目錄底下。
之後再用程式碼連結並呼叫並做一些處理。
設定database
給予TWStock.db一個名稱為dbname
並使用"sqlite3.connect(dbname)"這行code進行connect
dbname = "TWStock.db"
db = sqlite3.connect(dbname)
之後需要先設定下列的一些參數
dates_list = []
total_df = pd.DataFrame()
All_csv_file = glob.glob('*.csv')
使用"All_csv_file = glob.glob('*.csv')"這行code
將本地的.csv檔都匡列進All_csv_file。
都設定好之後會先進行第一次的for迴圈
將csv檔的檔名轉成純日期
將All_csv_file內的檔案名稱( 有100筆 ),將.csv的副檔名拿掉後分別存到database與dates_list內。
此時dates_list內的檔明會如下一樣塞滿日期( 這些之後會用到
全部都是日期名稱
之後再做第二段的for迴圈
透過dates_list讀取每一張表單
將dates_list透過迴圈將database內的檔案取出並轉成pandas
需要新增一個欄位名為"Date"並將日期放進去,之後df都丟到total_df內
做完以上的動作,total_df就會有100天的表單( 舊到新
但是我們需要把這些表單整理成一組一組,依股票代號為一個Group
dbname_2 = 'TWStock_2'
db2 = sqlite3.connect(dbname_2)
total_dict = dict(tuple(total_df.groupby("證券代號")))
我們需要再新增一個database,給它一個名稱叫'TWStock_2'
然後一樣要做connect,之後使用groupby將代號做成group並轉成字典
*這邊需要注意,轉成字典要將型態轉成tuple,不然會出錯
然後再進行迴圈
取出股票代號並將Date轉成datetime再丟入TWStock_2內
調出證券代號的每一筆資料後,需要對Date進行一些加工。
加工好之後排序,再將每筆資料都丟進TWStock_2內就完成了。
參考連結如下
https://www.youtube.com/watch?v=FP6OkPc9wbw
avatar-img
0會員
4內容數
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
爾他的沙龍 的其他內容
先設定一個url,並使用get將資料load下來,然後轉成text。 使用pd.read_csv去讀資料,會有' " '與' = '的部分要用下面的code去掉。 這樣會得到一個基本的DataFrame。 將此段cod寫成一個函式如下圖 start_date會是今天的日期,n會是想要抓的天數。
先設定一個url,並使用get將資料load下來,然後轉成text。 使用pd.read_csv去讀資料,會有' " '與' = '的部分要用下面的code去掉。 這樣會得到一個基本的DataFrame。 將此段cod寫成一個函式如下圖 start_date會是今天的日期,n會是想要抓的天數。
你可能也想看
Google News 追蹤
提問的內容越是清晰,強者、聰明人越能在短時間內做判斷、給出精準的建議,他們會對你產生「好印象」,認定你是「積極」的人,有機會、好人脈會不自覺地想引薦給你
在此篇中,我們來拿實務的例子作實戰練習,我們會討論如何在Google Colab的環境下,撈取所有台美股的股票代碼,並獲取相關細節,最後將獲取的資訊存取於SQLite資料庫中。
Thumbnail
本文介紹瞭如何使用 Python pandas 進行資料分析,包括如何使用 corr() 函數針對數字類型的欄位進行分析,以及如何刪除不需要的欄位和取得想要的小數位數。
Thumbnail
題目敘述 題目會給定兩個pandas DataFrame作為輸入,要求我們將兩張資料表,依照原有的順序串接在一起。 題目的原文敘述 測試範例 Example 1: Input: df1 +------------+---------+-----+ | student_id | name
Thumbnail
題目敘述 題目會給定一個pandas DataFrame作為輸入,要求我們回傳資料表的前3個Row。 題目的原文敘述 測試範例 Example 1: Input: DataFrame employees +-------------+-----------+-------------
Thumbnail
題目敘述 題目會給定一個python list形式的輸入,要求我們把它轉換成pandas dataframe的形式做輸出。並且指定column名稱分別為student_id, 和 age 題目的原文敘述 測試範例
提問的內容越是清晰,強者、聰明人越能在短時間內做判斷、給出精準的建議,他們會對你產生「好印象」,認定你是「積極」的人,有機會、好人脈會不自覺地想引薦給你
在此篇中,我們來拿實務的例子作實戰練習,我們會討論如何在Google Colab的環境下,撈取所有台美股的股票代碼,並獲取相關細節,最後將獲取的資訊存取於SQLite資料庫中。
Thumbnail
本文介紹瞭如何使用 Python pandas 進行資料分析,包括如何使用 corr() 函數針對數字類型的欄位進行分析,以及如何刪除不需要的欄位和取得想要的小數位數。
Thumbnail
題目敘述 題目會給定兩個pandas DataFrame作為輸入,要求我們將兩張資料表,依照原有的順序串接在一起。 題目的原文敘述 測試範例 Example 1: Input: df1 +------------+---------+-----+ | student_id | name
Thumbnail
題目敘述 題目會給定一個pandas DataFrame作為輸入,要求我們回傳資料表的前3個Row。 題目的原文敘述 測試範例 Example 1: Input: DataFrame employees +-------------+-----------+-------------
Thumbnail
題目敘述 題目會給定一個python list形式的輸入,要求我們把它轉換成pandas dataframe的形式做輸出。並且指定column名稱分別為student_id, 和 age 題目的原文敘述 測試範例