Pynote

Python、機械学習、画像処理について

Python

numpy - 上三角行列、下三角行列、対角行列の作成、対角成分の取得 (diag, tri, triu, tirl, etc)

概要 numpy の指定した行列から上三角行列、下三角行列、対角行列を作成する及び対角成分を取得する関数を整理する。 概要 一覧表 numpy.diag numpy.diagflat numpy.tri numpy.tril numpy.triu 参考

numpy - 規則的な配列を作成する。 (arange, linspace, meshgrid, etc)

概要 規則的な配列を作成する numpy の関数を整理する。 概要 一覧表 numpy.arange numpy.linspace numpy.logspace numpy.geomspace numpy.meshgrid numpy.mgrid 参考

numpy - 既存のリソースから作成する。 (copy, frombuffer, loadtxt, etc)

概要 リストや文字列、ファイルなど既存のリソースから配列を生成する numpy の関数を整理する。 概要 一覧表 numpy.array numpy.copy numpy.frombuffer numpy.fromfile numpy.fromfunction numpy.fromiter numpy.fromstring numpy.loadtxt 例: CSV ファイル…

numpy - 雛形から配列を作成する関数まとめ (empty, zeros, ones, etc)

概要 numpy の雛形から配列を生成する関数を整理する。 概要 一覧表 numpy.empty numpy.empty_like numpy.ones numpy.ones_like numpy.zeros numpy.zeros_like numpy.full numpy.full_like numpy.eye numpy.identity 参考

Jupyter Notebook - おすすめの nbextensions まとめ

概要 入力補完、コードの自動整形など Jupyter Notebook のおすすめの nbextensions を紹介する。 概要 関連記事 テーマやフォントの変更について Notebook のインストール方法について 試した環境 導入 次の2つをインストールする。 有効にする。 設定画面…

環境構築 - pipenv の使い方 まとめ

概要 Python 環境管理ツール pipenv の使い方をまとめた。 インストール方法については以下の記事を参照されたい。pynote.hatenablog.com 概要 試した環境 Python 環境を作成する。 新規に作成する 既存の Pipfile に基づき、作成する。 Python 環境にパッケ…

matplotlib - contourf() で塗りつぶした等高線を描画する。

概要 contourf() で塗りつぶした等高線を描画する際の各種設定について紹介する。contourf() は塗りつぶした等高線を作成するので、等高線のみ作成する場合は contour() 関数を使用する。pynote.hatenablog.com 概要 基本的な使い方 等高線の間隔を指定する…

Python - CSV の読み込み/書き込み まとめ

概要 CSV モジュールの使い方まとめ 概要 サンプルとして使用する CSV CSV を読み込み、リストで取得する。 1行ずつ読み込む。 一括で読み込む。 ヘッダーをスキップする。 リストを CSV に保存する。 1行ずつ書き込む。 一括で書き込む。 CSV を読み込み、O…

Python - itertools チートシート (頻出パターン)

概要 itertools モジュールを使用した頻出パターンを紹介する。 概要 itertools の import 等間隔の値を返すイテレータを作成する。 初項だけ指定する。 初項と公差を指定する。 配列を無限に繰り返すイテレータを作成する。 同じ値を繰り返すイテレータを作…

matplotlib - アニメーションするグラフを作成する

概要 matplotlib でアニメーションするグラフを作成する方法を紹介する。 概要 各フレームを予め作成する。 animation.ArtistAnimation サンプル 複数の Axes がある場合 オンラインでフレームを生成する。 animation.ArtistAnimation サンプル

matplotlib - 2変数関数を3Dで可視化する。

概要 matplotlib で2変数関数を可視化する方法を紹介する。 概要 ワイヤーフレームでグラフを作成する。 ポリゴンでグラフを作成する。 点でグラフを作成する。 等高線を作成する。 等高線を作成する。(同じ高さを塗りつぶす)

matplotlib - 散布図を作成する。

概要 matplotlib で散布図を作成する方法について紹介する。 概要

matplotlib - 円グラフを作成する。

概要 matplotlib で円グラフを作成する方法について紹介する。 概要 一部の項目を強調する。 最初の項目をどの角度から始めるかを設定する。 影を設定する。

Jupyter Notebook - jupyterthemes で見た目をカスタマイズする。

概要 Jupyter Notebook のテーマやフォントを簡単に変更できるライブラリ jupyterthemes の使い方を紹介する。 概要 インストール方法 テーマ一覧を表示する。 chesterish grade3 gruvboxd gruvboxl monokai oceans16 onedork solarizedd solarizedl テーマ…

matplotlib - 折れ線グラフを作成する。

概要 matplotlib で折れ線グラフを作成する方法について紹介する。 概要 1つの Axes に2つの折れ線グラフを作成する。 線の幅を設定する。 線のカスタマイズ 線の色を設定する。 ダッシュ線の空白の間隔を設定する。 点同士の結び方を設定する。 点のカスタ…

matplotlib - 棒グラフ / 積み上げ棒グラフを作成する。

概要 matplotlib で棒グラフを作成する方法について紹介する。 概要 棒グラフを作成する。 棒の幅を設定する。 積み上げ棒グラフを作成する。 棒グラフの位置を設定する。 棒グラフの色を設定する。 棒グラフの枠線の色を設定する。 棒グラフの枠線の幅を設…

matplotlib - カラーマップについて

概要 matplotlib のカラーマップについて紹介する。 概要 カラーマップ 使い方 Sequencial (連続) Diverging (発散) Cyclic (周期) Qualitative (定性) カラーマップ一覧を生成したコード

matplotlib - 日本語のテキストを使う方法について

概要 matplotlib で日本語のテキストを表示する方法について紹介する。 概要 日本語を使おうとすると文字化けする。 Ubuntu の場合 日本語フォントがあるかどうか確認する。 matplotlib の設定ファイルを編集する。 キャッシュを削除する。 Windows 日本語フ…

matplotlib - 図に複数のグラフを追加する方法

概要 matplotlib で図に複数のグラフを追加する方法について紹介する。 一つの Figure に複数の Axes を追加するには、plt.subplot()、plt.subplots()、Figure.add_subplot() または Figure.subplots() を使用する。 概要 plt.subplot() nrows, ncols, index…

matplotlib - matplotlib の使うために理解するべき基本要素

概要 matplotlib のアーキテクチャについて紹介する。 概要 3つのレイヤー backend レイヤー Artist レイヤー Script レイヤー 1. pyplot モジュールをインポートした際、ファイルからデフォルト設定を読み込む。 2. ヒストグラムを描画する。 3.タイトルを…

OpenCV - cv::Mat と numpy 配列の対応まとめ

概要 OpenCV を C++ で使う場合は画像は cv::Mat として扱うが、 Python で使う場合は numpy array として扱う。 numpy array と cv::Mat ではインタフェースが幾分異なるため、その対応をまとめた。 概要 プロパティ 行数、列数、チャンネル数 カラー画像か…

OpenCV - 行列の加減乗除及び Utility 関数

概要 OpenCV の配列の加減乗除及びその Utility 関数についてまとめた。 C++、Python 両方に対応。 概要 試した環境 加減乗除 加算 関数 コード 減算 関数 コード 要素ごとの乗算 関数 コード 要素ごとの除算 関数 コード 比較 関数 コード Utility 関数 abs…

scikit-learn - データセットを学習データとテストデータに分割する。

概要 データセットを学習データ及びテストデータに分割する scikit-learn の関数 train_test_split() について紹介する。 概要 train_test_split() 引数 返り値 基本的な使い方 分割する割合または数を指定する。 分割する配列を指定する。 サンプルコード …

Keras 実装で学ぶ YOLOv3 - その1 YOLOv3 ネットワークの概要とその実装

概要 YOLOv3 の仕組みについて、Keras 実装の keras-yolo3 をベースに説明する。 概要 ネットワークの構造 YOLOv3 ネットワーク Darknet-53 ネットワーク ネットワークの実装 必要なモジュールを import する。 utils.compose() について 1つの畳み込み層 Da…

Python - 関数の合成

概要 関数のリストを引数にとり、合成関数を作成する関数を作成する。例: 概要 試した環境 関数の合成 Python による実装 functools.reduce() function composition の実装例 iterable の要素を任意の引数をとる関数に対応させる。 参考

環境構築 - Jupyter Notebook の導入方法について

概要 Jupyter Notebook のインストール及び使用方法について 概要 試した環境 手順 jupyter をインストールする。 ワーキングディレクトリを作成する。 起動する。 Tips root ユーザーで起動する。 Docker コンテナ上で実行する。 リモートからアクセスする…

環境構築 - pipenv で Python 環境の構築方法 (2018年11月版)

概要 システム標準の Python 環境は極力手を加えない方針で、プロジェクト単位で Python 及びパッケージのバージョン管理を実現する方法を紹介する。 使用するツールは以下の2つである。 pipenv: Python 及びパッケージのバージョン管理が行える Python 公式…