どこにでもいる30代SEの学習ブログ

主にプログラミング関連の学習内容。読んだ本の感想や株式投資についても書いてます。

プログラミング-Python

【Python】株価のテクニカル分析指標から売買タイミングを自動計算

以前に「pandas-datareader」と「mplfinance」を用いて、テクニカル分析チャートを作成しました。その際に「MACD」や「RSI」などのテクニカル分析指標を算出しました。 predora005.hatenablog.com 今回は、これらの指標から売買のタイミングを計算します。 1…

【AWS】pythonでS3のファイルを操作する手順(Boto3)

pythonのプログラムからS3を操作する手順をまとめました。ファイルのアップロード/ダウンロードなど、基本的な手順を書いています。 [1] 前提条件 [2] 準備 [2-1] boto3のインストール [2-2] EC2にIAMロールを付与する [3] Boto3を使った操作の概略 [4] Boto…

【機械学習】AutoGluonの使い方・クイックスタートの解説(物体検出)

AutoGluonの「物体検出」のクイックスタートについて紹介・解説します。YOLOv3モデルを使って画像からバイクを検出するという内容です。 Object Detection - Quick Start — AutoGluon Documentation 0.2.0 documentation 表形式データや画像認識については別…

【機械学習】AutoGluonの使い方・クイックスタートの解説(画像認識)

AutoGluonの「画像認識」のクイックスタートについて紹介・解説します。 各画像に描かれた衣類のカテゴリーを分類するという内容です。カテゴリはBabyPants, BabyShirt, womencasualshoes, womenchiffontopの4種類です。 Image Prediction - Quick Start — A…

【機械学習】AutoGluonの使い方・クイックスタートの解説(表形式データ)

「AutoGluon」の使い方を、公式のクイックスタートを解説する形で紹介します。 AutoGluonは、AutoML(Auto Machine Learning)を実現するライブラリです。特徴量の設計など機械学習で大変な部分を自動化してくれます。 AutoGluonは数あるAutoMLライブラリの一…

【AWS】LambdaでPillowを使う方法(Lambda Layer)

AWS LambdaでPillowを使おうと思ったら次のエラーが表示されました。 [ERROR] Runtime.ImportModuleError: Unable to import module 'lambda_function': No module named 'PIL' Traceback (most recent call last): Lambdaのデフォルト環境にはPillowが入っ…

【AWS】30分で簡単なウェブアプリケーション構築(Amplify+Lambda+DynamoDB)

AWS公式のハンズオン「AWS で基本的なウェブアプリケーションを構築する」を見て、簡単なウェブアプリケーションを構築しました。 aws.amazon.com 構築方法はハンズオンを見れば、ほとんど分かります。ところどころハンズオン通りに行かないところがあったの…

【AWS】HTTP API+Lambda+DynamoDBのチュートリアルをやってみた

API Gatewayのチュートリアルの中に「Lambda と DynamoDB を使用した CRUD API の構築」があったのでやってみました。HTTP APIを使用するチュートリアルです。 docs.aws.amazon.com [1] DynamoDBテーブルの作成 [2] Lambda関数の作成 [3] HTTP APIを作成 [4]…

【AWS】Lambdaの使い方や料金(初めて使うとき気になったこと)

「AWS Lambda」はAWSのサーバーレスコンピューティングサービスです。 定期的に実行する処理や、イベントで起動する処理を作りたいと思い、使ってみることにしました。例えば、1日に1回株価のチャート分析をしたり、Webアプリからの入力があったらデータベー…

Python 100行以内で書ける株価のテクニカル分析チャート(pandas-datareader & mplfinance)

Pythonで株価を取得してローソク足チャートを作ったところ、驚くほど簡単に書けました。「pandas-datareader」と「mplfinance」を使用しましたが、ソースコードの行数は60行でした。以下のようなグラフが簡単に作れます。 [1] 株価の取得 [2] ローソク足チャ…

pandas-datareaderでTOPIX500銘柄の株価上昇率を算出

<pandas-datareaderでTOPIX500銘柄の株価上昇率を算出>*1 前回はpandas-datareaderで米国株の株価を取得しました。 predora005.hatenablog.com 今回は、東証一部上場銘柄の株価を取得し、業種ごとの株価変動を可視化しました。 [1] 東証上場銘柄を取得する [1-1] JPX(日本取引所グループ)から取得 [1-2] CSVに変</pandas-datareaderでtopix500銘柄の株価上昇率を算出>…

pandas-datareaderのインストール手順と米国株の株価取得方法

<pandas-datareaderで米国株の株価取得>*1 「pandas-datareader」で株価を取得します。以前、日本株の株価をスクレイピングで取得しましたが、「pandas-datareader」の方がより簡単に取得できました。 バンガード S&P500 ETF (VOO)の株価を取得し、グラフ表示するまでの手順を紹介します。 [1] イ</pandas-datareaderで米国株の株価取得>…

【政府統計】pythonによる政府統計e-StatのAPI機能の使い方

*1 「政府統計の総合窓口(e-Stat)」の統計データは、APIで取得可能です。ユーザ登録(無料)を行えば、誰でもAPIを利用できます。 Pythonを使って、API経由で人口動態のデータを取得し、matplotlibでグラフ表示しました。 [1] ユーザ登録 [2] アプリケーション…

【AWS】t4gでnumpy, pandas, matplotlibをインストールする方法

AWSのArmベースインスタンスのt4g.micro、2021年3月31日まで無料トライアル中です。無料で使えるやったと思っていたら思わぬところで引っかかりました。 [0] 前提条件 [1] numpyのインストールに失敗する [2] numpyのインストールに時間がかかる [3] pandas…

日本株の株価をpythonでスクレイピングを使って取得しmatplotlibで可視化する(複数銘柄)

前回の続きです。前回は単一銘柄の株価をスクレイピングで取得しmatplotlibで可視化しました。今回は複数銘柄の株価を取得し比較していきます。 predora005.hatenablog.com [1] 複数銘柄の株価取得 [2] 可視化 [2-1] 2020年以降のデータを抽出 [2-2] 株価の…

日本株の株価をpythonでスクレイピングを使って取得しmatplotlibで可視化する(単一銘柄)

過去数年分の株価をスクレイピングで取得して可視化する手順を紹介します。最終的に以下のようなグラフを作成します。 各銘柄の時価総額や決算情報を取得する手順や、ライブラリ(pandas-datareader)を用いて株価を取得する手順も別の記事にまとめています。 …

日本株の情報をスクレイピングで取得しmatplotlibで可視化する

*1 前回の続きです。前回は、複数銘柄の決算情報と財務情報をスクレイピングで取得しました。今回は前回取得した情報を可視化します。 predora005.hatenablog.com [1] 基本的な指標の可視化 [1-1] matplotlibをインストール [1-2] PERの可視化 [1-3] PSRとPB…

日本株の決算情報と財務情報をpythonでスクレイピングを使って取得する

*1 前回の続きです。前回は複数銘柄のPERや配当利回り等をスクレイピングで取得しました。今回は決算情報をスクレイピングで取得します。 predora005.hatenablog.com [1] 取得する情報 [1-1] 決算情報と財務情報 [1-2] HTMLの中身 [2] スクレイピング [2-1] …

日本株の基礎指標(PERや配当利回り)をpythonでスクレイピングを使って取得する (2)

*1 前回の続きです。前回は「みんなの株式」から、単一銘柄のPERや配当利回りをスクレイピングで取得しました。今回は複数銘柄の情報を統合してみます。 predora005.hatenablog.com [1] DataFrameにまとめる [1-1] pandasのインストール [1-2] DataFrameの作…

日本株の基礎指標(PERや配当利回り)をpythonでスクレイピングを使って取得する (1)

*1 本記事では、日本株の基礎指標をスクレイピングで取得する手順を紹介しています。また、スクレイピング先のサイトがスクレイピングを禁止していないか確認する方法にも触れています。 [1] きっかけ [2] 時価総額やPERなどの指標を取得 [3] スクレピング可…

pygribで気象庁の数値予報GPVデータを読み込む

※ 2020/08/16にQrunchで書いた記事を移行しました。 気象庁の数値予報データをPythonで扱いました。 pygribというライブラリでデータを読み込み、数値予報データの中身を確認する方法を紹介します。 [1] 数値予報GPVデータ [1-1] 数値予報とは [1-2] 数値予…

pygribのインストール方法:Amazon Linux2

<pygribのインストール方法:Amazon Linux2>*1 ※ 2020/06/09にQrunchで書いた記事を移行しました。 Amazon Linux2で、pygribのインストールに、かなり手間取りました。 自分や他の方が、再び同じ所で躓かないように、備忘録として解決法をまとめました。 何が起きるのか 色々インストールすることにな</pygribのインストール方法:amazon>…

【機械学習】matplotlibの日本語文字化け対策(Amazon Linux2)

※ 2020/05/20にQrunchで書いた記事を移行しました。 matplotlibの文字化け対策は多くの情報がありますが、Amazon Linux2向けの情報はありませんでした。他のOSと基本的な対策方針は同様です。日本語フォントをインストールし、キャッシュを削除します。 対策…

【機械学習】xgboostでグリッドサーチ(GridSearchCV)

<xgboostでグリッドサーチ(GridSearchCV)>*1 ※ 2020/04/09にQrunchで書いた記事を移行しました。 scikit-learnのGridSearchCVを利用して、グリッドサーチを行いました。 xgboostにはscikit-learnのWrapperが用意されているため、scikit-learnを使ったことがある人であれば、違和感なく使うことが出来</xgboostでグリッドサーチ(gridsearchcv)>…

pandasで複数行の列を持つDataFrameを作成する方法

<pandasで複数行の列を持つDataFrameを作成する方法>*1 ※ 2020/04/04にQrunchで書いた記事を移行しました。 列が複数行となっているDataFrameを作成する方法の覚書です。 結論は「pd.MultiIndexを使う」です。 例えば、次のようなDataFrameを作成したいとします。 # One Two Three # Four Five Six # 0 1.11 2.</pandasで複数行の列を持つdataframeを作成する方法>…

【機械学習】xgboostでクロスバリデーション(Cross Validation)

<xgboostでクロスバリデーション(Cross Validation)>*1 ※ 2020/04/06にQrunchで書いた記事を移行しました。 xgboost.cv()を使用したクロスバリデーション(交差検証)の方法を簡単にまとめました。 クロスバリデーションとは、学習データの一部を検証用データとして使用する手法です。 Wikipedaによれば次の通り</xgboostでクロスバリデーション(cross>…

Pythonでセルが結合されたテーブルをスクレイピングする方法

<pandasのDataFrameをconcatすると型が変わってしまう場合の対処法>*1 ※ 2020/03/26にQrunchで書いた記事を移行しました。 BeautifulSoupを使うと、Pythonでスクレイピングを簡単に行うことができます。しかし、セルが結合されたテーブルのスクレイピングは少々面倒です。 以下の画像は、過去の気象データなのですが、テーブ</pandasのdataframeをconcatすると型が変わってしまう場合の対処法>…

pandasのDataFrameをconcatすると型が変わってしまう場合の対処法

<pandasのDataFrameをconcatすると型が変わってしまう場合の対処法>*1 ※ 2020/03/14にQrunchで書いた記事を移行しました。 pandasのDataFrameを連結する際はconcatを使用します。 このとき、DataFrameにNaNが含まれていると型が変わってしまう場合があります。 起きた事象 dtypeがintの列を結合するとき、結合元のいずれかにN</pandasのdataframeをconcatすると型が変わってしまう場合の対処法>…

Pythonで気象庁の過去気象データをスクレイピング

※ 2020/02/23にQrunchで書いた記事を移行しました。 気象庁が公開している過去の気象データを取得するためにスクレイピングを使用しました。 今回、取得したのは高層の気象データです。過去の気象データ検索からアクセスできます。 下図の2つの表(table1, ta…

【機械学習】pandasでCSV読み込み

※ 2020/02/16にQrunchで書いた記事を移行しました。 Pyhtonで機械学習を行うとき、入力データをCSVファイルから取得することがあります。 Pythonで機械学習と言えばnumpyが欠かせませんが、CSVファイルの読み込みはpandasで行うと大変便利です。数行のコード…