scipy.stats のパラメータ loc と scale について
scipy.stats の各種オブジェクトには loc
およびscale
というパラメータがあります.
これらは結構混乱のもとなので,(自分向けに)まとめてみました.
任意の標準的な分布 があるとき,
パラメータ loc=mu, scale=sigma
と指定することで,
が にしたがうようになる.
具体的には,例えば正規分布なら,scipy.stats.norm(loc=mu, scale=sigma)
とすると,
確率変数 が標準正規分布にしたがう.
よって,もとの がどうなるかというと,計算してみるとこの場合 となる.
つまり平均 ,分散 なる正規分布である.
分布なら,scipy.stats.chi2(df=n, loc=mu, scale=sigma)
とすると,
確率変数 が自由度nの分布に従う.
よって,もとの がどうなるかというと,自由度nの分布に従う確率変数を 倍して
を足したものとなる.
【numpy】viewとcopy
配列のview
とは、もとの配列と同じデータを指している。
一方、copy
は、もとの配列と同じデータのコピーを指している。
つまり、配列a
のview
であるv
が存在するとして、v
の要素を書き換えるとa
の値も同時に書き換わる。
しかし、a
のcopy
であるc
の要素を書き換えてもa
の値は影響を受けない。
例えば、
続きを読むNumPyから最高のパフォーマンスを得る方法
2018/12/27 追記
この記事はかなり昔の情報が混じっている可能性があります。 元の記事にもいくつか修正が入っているようですが、この翻訳記事では特に修正を実施していません。ご注意ください。 正確な情報は元記事を参照してください。
記事
この記事の和訳です。
色々間違っている可能性があるのでご注意ください。
NumPyはPythonの科学計算ソフトフェア群の基礎となるものです。
NumPyはndarray
というベクトル計算に最適化された特別なデータ構造を提供します。
このオブジェクトは、科学数値計算の中の多くのアルゴリズムの核となっています。
特に計算がひとつの命令で多くのデータを操作する (SIMD) パラダイムに沿っている時、Numpy array (配列)を使うことでネイティブなPythonよりもかなりのパフォーマンスの高速化が達成できます。 しかし、最適化されていないNumPyのコードを何気なく書いてしまうこともありえます。
この記事では、あなたが最適化されたNumPyのコードを書くことを助けるいくつかのトリックを紹介します。 時間とメモリを節約するために、不必要な配列のコピーを避ける方法から見ていきましょう。 そのために、NumPyの内部に分け入る必要があるでしょう。
続きを読む【Python】 progressbar
進捗を示すためにshell上にプログレスバーを表示したいことがよくあります.
50% (200 of 400) |############ |
こんなやつです.
Pythonでも,重い処理をforループで回すときに欲しくなります. 当然同じことを考える人がいるので,すでにパッケージがあります.
「python progressbar」で検索して一番上に出てくるパッケージ(progressbar)はpython3に対応してない上,開発がだいぶ前に止まっているので,今回は別のパッケージ(progressbar2)を使います.
続きを読む