[JavaScript][TypeScript] 配列の直積(すべての順列)を得る関数productを作る

はじめに Pythonの場合 TypeScriptで書く JavaScriptの場合 まとめ はじめに JavaScript/TypeScriptで複数の配列の直積(すべての順列)が欲しいという場面があった。Pythonなら組み込み関数productで解決できるのだが、JavaScript/TypeScriptではそのような…

信号検出理論に関するノート

はじめに 問題の設定と数理モデル 弁別力の指標 d'(Sensitivity index) 受信者操作特性(Receiver operating characteristic: ROC) 参考文献 はじめに 信号検出理論(Signal Detection Theory)という理論に興味を持ったので、調べつつざっくりまとめてみ…

異なるN人のグループ分けの総数が知りたい

はじめに 例:4人のグループ分けの総数 Pythonで計算してみる n=4の場合 n=8までの場合 計算方法の難点 ベル数を使って計算する はじめに 識別可能なN人を任意のグループに分けるとき、その分け方の総数を知りたい。はじめにPythonを使って力業で数え上げて…

[統計] 統計でおすすめの本(主に回帰)

はじめに 諸注意 対象者について 統計の基本~単回帰 統計学入門 一般化線形モデル(GLM) データ解析のための統計モデリング入門 一般化線形モデル入門 自然科学の統計学 R アート・オブ・Rプログラミング はじめに 統計学を勉強するために読んだ本の中から…

[統計] GLMの最尤推定を自分でやってみる

はじめに ロジスティック回帰 対数尤度 対数尤度の計算 statsmodelsでGLM 実際の最尤推定の手順 メモ 関連記事 はじめに GLMで対数尤度を自分で計算して自分で最尤推定をやってみる、という回。 ロジスティック回帰 今回はロジスティック回帰を行ってみる。…

[統計] GLMでの区間推定

はじめに GLM GLMのパラメータの最尤推定量が従う分布 例:パラメータ2つのロジスティック回帰 信頼区間の検証 正規分布近似とWald統計量 参考文献 関連記事 はじめに 前回の記事では、正規分布の平均を区間推定する方法を説明した。cyanatlas.hatenablog.co…

[統計] 信頼区間とは何か

はじめに 点推定と区間推定 区間推定の定義 区間推定の妥当性 正規分布に従う母集団の平均を区間推定する(t 統計量を用いる方法) 正規分布に従う母集団の平均を区間推定する(ブートストラップ法) まとめ 参考資料・参考文献 関連記事 はじめに 与えられ…

[Python][Seaborn] Swarmplotが便利

Swarmplotの利点 Swarmplotの限界 Swarmplotの利点 Seabornライブラリのswarmplotがとても便利、というだけの記事。 import matplotlib.pyplot as plt import seaborn as sns df = sns.load_dataset('iris') fig, ax = plt.subplots() sns.swarmplot(x='spec…

[Python][Pandas] いずれかの文字列と合致するorを含む行を抽出する

はじめに テスト用のDataFrameを読み込む DataFrameからある一つの文字列と合致する行を取り出す DataFrameから複数の文字列のいずれかと合致する行を取り出す DetaFrameから複数の文字列のいずれかを含む行を取り出す はじめに 文字列のリストが用意されて…

Wikipedia「Narrative structure」の和訳

少し興味を持ったので、訳しつつ読んでみた。感想としては、分類のセクションはなるほどと思ったが、他の箇所は話がつぎはぎで得るものは少なかったかなという印象。原文はこちら(2020年6月27日版)。 en.wikipedia.org注意 ざっくり和訳なので厳密な訳では…

[Python][Pandas] Pandasの基本用法まとめ

環境:Windows10 + Anaconda 4.8.1 + Python 3.7 + Pandas 1.0.5 目次 はじめに 準備 インストール バージョン インポート サンプルデータ Pandasの型 データフレームの作成 CSVファイルの読み込み・書き出し pandas.read_csv(filename, sep=',') -> pandas.…

[Python][Matplotlib] 変な形のアトラクターをつくる差分方程式系を適当に探してみる

はじめに 差分方程式系を作る 作図する 安定性解析 平衡点 安定性 ソースコード 2次元 3次元 はじめに 以前、グモウスキー・ミラの写像を作図したときに、差分方程式系のアトラクターはなかなか綺麗に描けるものだとわかった。cyanatlas.hatenablog.comそこ…

CSVの表→はてな記法コンバータ

CSVデータの入力 一番上の行をタイトル行にする 一番左の列をタイトル列にする 変換実行 変換結果(はてな記法) ここに変換結果が出力されます 使い方 CSV形式の表をはてな記法の表に変換するコンバータを試しに作ってみた(バグあるかも)。 CSVファイルを…

[Python][Matplotlib] 色の形式を変換する

環境 Windows10 + Python 3.7.6 + Matplotlib 3.1.1maptlotlib.colorsモジュールには、色を表現する変数を変換する関数が用意されており、なかなか便利そうだったのでまとめてみた。 HSV(0~1)からRGB(0~1)へ RGB(0~1)からHSV(0~1)へ RGB(0~1)から16進数へ 16…

[Python][Gnuplot] ロジスティック写像の分岐図を描く

環境 Windows10 + Anaconda 4.8.1 + Python 3.7.6 + gnuplot 5.2(patchlevel 8) はじめに 結果 ソースコード Gnuplotを使った他の記事 はじめに Pythonでロジスティック写像を計算し、Gnuplotを使って分岐図を描いてみた。Wikipediaの図ほど綺麗には描けなか…

[Python][Gnuplot] PythonからGnuplotを使ってグモウスキー・ミラの写像を作図する

環境 Windows10 + Anaconda 4.8.1 + Python 3.7.6 + gnuplot 5.2(patchlevel 8) はじめに 結果 ソースコード 解説 参考ページ 関連記事 はじめに 以前、PythonでMatplotlibを使ってグモウスキー・ミラの写像を作図したのだが、小さな点の打ち方が分からず、…

[Python][Matplotlib] グモウスキー・ミラの写像を描く

はじめに 出力結果 ソースコード 関連記事 はじめに 不思議な模様が現れることで有名な差分方程式系の一つに、グモウスキー・ミラの写像というものがある。ja.wikipedia.org以前、PythonのMatplotlibを使って作図したコードを発見したので貼ってみる。本当は…

[Python][Matplotlib] 等高線プロットcontourfで一部に色を塗らない

結論から言えば、色を塗りたくない場所にnp.nanを代入しておけばよい。 通常のcontourf 一部領域で色を塗らないcontourf その他 通常のcontourf from itertools import product import matplotlib.pyplot as plt import numpy as np X = np.linspace(0, 5, 2…

[Python][Matplotlib] よく使うリンク集

Matplotlibを使うときに自分がよく開くページのリンク集。公式ドキュメントがメインだが他のページも。随時追加。 目次 Matplotlibの公式ドキュメントについて 色関連 Color Colormap Colorpalette(seaborn) 等高線プロットContour(f)関連 Axes.contour(f)…

[Python] CSVファイルの表をはてな記法の表に変換する

はじめに:はてな記法の表とは 問題点:はてな記法で表を書く面倒さ 解決策:CSVファイルをはてな記法に変換する(Python) オンラインコンバータ 2020/07/16追記 オンラインコンバータを作ってみた。 cyanatlas.hatenablog.com はじめに:はてな記法の表と…

[Python] タプルには代入できないがタプル内リストには代入できるという話

環境:Windows10 + Python 3.7.6 リストとタプルの違い タプル内リストの落とし穴 解決策:タプル内リストを避ける リストとタプルの違い Pythonの組み込み型には、配列を表現できるリストとタプルという二つの型が用意されている。この二つには、値の変更を…

[Python][Matplotlib] 一枚の図に複数のグラフを描く

はじめに 1. add_subplot メソッドを使う 2. Gridspec オブジェクトを使う 3. Gridspecを使えば複雑なレイアウトも可能 まとめ はじめに Matplotライブラリを使って、一枚の図に複数のグラフを描きたいときがある。ここでは二つの方法を説明する。 add_subpl…

[Python][Numpy] 組み込みのboolとNumpy.bool_は別物

Python組み込みのbool型とnumpy.bool_型は別物なので、is演算子で比較する場合は注意が必要、という話。環境:Windows10 + Python 3.7 + Numpy 1.18.1 numpy.bool_型とPython組み込みのbool型は別物 バグではない 解決策1:bool関数で型変換する 解決策2:==…

[Python][Matplotlib] sin(x)のマクローリン展開のGIFアニメーションを作る Making GIF animation of Maclaurin series of sin(x)

sin(x)のマクローリン展開 Maclaurin series of sin(x) GIFアニメーション GIF animation ソースコード Source code 関連記事 sin(x)のマクローリン展開 Maclaurin series of sin(x) GIFアニメーション GIF animation のマクローリン展開には奇数番目の項し…

[Python][Matplotlib] e^xのマクローリン展開のGIFアニメーションを作る

e^x のマクローリン展開 GIFアニメーション ソースコード 関連記事 e^x のマクローリン展開 GIFアニメーション ソースコード 実行にはImageMagickのインストールが必要。 import math import numpy as np import matplotlib.pyplot as plt import matplotlib…

[Python] product関数を使って多重ループを1つのループにする

多重ループを書くとネストが深くなり、読みにくさが倍増する。関数を使うなど、ループを浅くする方法はいくつかあるが、ここではPython標準ライブラリのitertoolsライブラリを使う方法を紹介する。例えば次のようなコードがあったとしよう。コード 1: for i …

[Python][Matplotlib] Matplotlibのデフォルトカラーセット

引数 色 16進数コード RGBコード(0~255) 'C0' blue #1f77b4 (31, 119, 180) 'C1' orange #ff7f0e (255, 127, 14) 'C2' green #2ca02c (44, 160, 44) 'C3' red #d62728 (214, 39, 40) 'C4' purple #9467bd (148, 103, 189) 'C5' brown #8c564b (140, 86, 75…

[Python][Matplotlib] 枠・軸を削除する・目盛りのトゲを削除する(Removing frames, axes and ticks)

目次 Contents ふつうに図を描く Plot with no options 枠・軸を消す Remove the frame and axes 部分的に消す Partially remove the frame and axes すべて消す Entirely remove the frame and axes 目盛りのトゲを消す Remove the ticks 部分的に消す Part…

[数学][位相] 位相に関連する定義と定理のざっくりまとめ ~連続性と連結性とコンパクト性~

注意 私(=この記事の著者)は数学徒ではありません.基本的に定理の証明は追ってません. 「位相」に関連する定義と定理を(私の主観で)まとめました. 主に松坂『集合・位相入門』の後半をざっと読んでまとめました. 「定義」「定理」以外の部分では,…

[Python][Matplotlib] Matplotlibのデフォルト設定を取得する方法(rcParamsから値を取得する方法)

環境:Windows10 + Anaconda + Python 3.6.4 + Matplotlib 2.1.2Pythonの Matplotlibライブラリには、図のサイズや線の色といった、デフォルトの設定がある。デフォルトの設定の一部は、rcParamsというMatplotlibオブジェクトに格納されている。rcParamsの値…