過去の暗号通貨価格を取得〜Kaggleのデータベースを使用する方法

Kaggleに登録してZIPを取得

Kaggle公式サイト

今回使用したデータセット

importして取得

Pythonの環境構築がまだの方はこちらの記事を参考にしてみてください。

基本全部コピペで楽しめますので難しく考えずに手順通り進めましょう。

M1 Mac以降の Python 環境構築 [完全保存版]

pip install zipfile36
import datetime as dt
import numpy as np
import pandas as pd
# エラーが出る場合はディレクトリの場所を変えてみてください
# 筆者はDownlodsでエラーが出たのでDesktopで読み込みました。
from zipfile import ZipFile
zf = ZipFile('/場所/archive.zip')
cols = ['time', 'open', 'high', 'low', 'close', 'volume']
dfs = pd.concat({text_file.filename.split('.')[0]: pd.read_csv(zf.open(text_file.filename),
                                                              usecols=cols)
                for text_file in zf.infolist()
                if text_file.filename.endswith('.csv')
                })
dfs

データを整える

df = dfs.droplevel(1).reset_index().rename(columns={'index':'ticker'})
df = df[df['ticker'].str.contains('usd')]
df['date'] = pd.to_datetime(df['time'], unit='ms')
df = df.sort_values(by=['date','ticker'])
df = df.drop(columns='time')
df = df.set_index(['date','ticker'])
df = df['2020-01-01':'2020-12-31']
df

リサンプル

bars1m = df
bars1m = bars1m.reset_index().set_index('date').groupby('ticker').resample('1min').last().droplevel(0)
bars1m.loc[:, bars1m.columns[:-1]] = bars1m[bars1m.columns[:-1]].ffill()
bars1m.loc[:, 'volume'] = bars1m['volume'].fillna(value=0.0)
bars1m = bars1m.reset_index().sort_values(by=['date','ticker']).set_index(['date','ticker'])
bars1m

CSVにエクスポート

# ファイル名だけを指定すると、同じディレクトリに保存。
bars1m.to_csv('crypto-price-data.csv')
定して書き出す場合はファイル名の前にディレクトリを指定すればOKです。

Kotaro
Kotaro
服部 洸太郎
音大を卒業後ピアニストとして活動。
自身のピアノトリオで活動後北欧スウェーデンにてシンガーアーティストLindha Kallerdahlと声帯とピアノによる即興哲学を研究。
その後ドイツへ渡りケルンにてAchim Tangと共に作品制作。
帰国後、金田式電流伝送DC録音の名手:五島昭彦氏のスタジオ「タイムマシンレコード」にアシスタントとして弟子入りし、録音エンジニアとしての活動開始。
独立後、音楽レーベル「芸術工房Pinocoa(現在はKotaro Studioに統合)」を立ち上げ、タンゴやクラシックなどのアコースティック音楽作品を多数プロデュース。
その後、秋山庄太郎氏後継の写真スタジオ「村上アーカイブス」でサウンドデザイナー兼音響担当として映像制作チームに参加。
村上宏治氏の元で本格的に写真、映像技術を学ぶ。
祖父母の在宅介護をきっかけにプログラムの世界に興味を持ち、介護で使えるプログラムをM5Stackを使って自作。
株式会社 ジオセンスの代表取締役社長:小林一英氏よりプログラムを学ぶ。
現在はKotaro Studioにてアルゼンチンタンゴをはじめとした民族音楽に関する文化の研究、ピアノ音響、さらに432hz周波数を使った癒しのサウンドを研究中。
スタジオでは「誰かのためにただここに在る」をコンセプトに、誰がいつ訪れても安心感が得られる場所、サイトを模索中。