2015-01-01から1ヶ月間の記事一覧

I グラフのホモロジー群 ぱらぱらめくる『計算で身につくトポロジー』

1 集合・命題・写像(必要十分と同値、全射と単射と全単射) 2 Z自由加群 Z自由加群 集合Sに対して[tex:Z = \{\sum_{j=1}^r a_j s_j|a_j \in Z={...,-2,-1,0,1,2,...},s_j \in S\}]で定義されるもの 和という演算に関して群である(加群) 準同型写像 homomorphi…

python->球面調和関数→球面のフーリエ変換

パイソンやって、球面調和関数が簡単になったので、その先の球面の直交分解・フーリエ変換について調べもの 資料1 資料2 資料3 資料4 資料5 資料6(水素原子の波動方程式) 資料7(偏微分方程式と確率過程) データ解析的な面から、少しまとめてみたのが…

球面調和関数〜R と python との感想 その2

こちらで球面調和関数の絵をRで描いている どうしてかといいうと、すぐにspherical harmonics関連の関数がCRANなどで見つけられなかったから…(どこにあるのか?) pythonだと、"python spherical harmonics"と検索するとすぐ出て(こちら)、こちらをコピーペ…

球面調和関数

R と python との感想

年末年始にpythonをいじってみた データ解析の面からRとpythonを比較した記事がいくつかあり、pythonでRの代りになる、という意見もあれば、Rの統計解析にとって代わりきることはないだろう、という意見もあるようだった この記事あたりに肯く人が多いのかと…

pythonを使う

少し慣れてきたので、なぞった内容をもう少しいじってみる import numpy as np # ベクトル・行列・高次元アレイを使う import scipy as sp # 線形代数・関数・数値計算 # matplotlibのpylabインタフェースは、MATLABの利用経験があるユーザがmatplotlibを簡…

pythonを使う

Windowsでpython2.7を使うためのコンパイラ

パイソンをいじるここ数日 何がハードルか、と言えば、入れたいパッケージをうまく入れられないこと それを乗り越えるために (1) 必要そうなものをごっそり入れてくれる仕組みを使う(Ipython,python(x,1),商用ツールのフリー版) (2) pipコマンド などがある…

まず、調べ物のやり方〜pythonで幾何をやりながら、調べ物のやり方を覚える

調べものができるようになることは大事。まずは、こことここを読む コードを探すにはNULLEGEサーチも便利 わからない関数、使われているオブジェクトに対して、OBJ.__doc__、OBJ.__class__、help(OBJ)を使う 例。複素数zを作って、それについてやってみる z …

実践編〜pythonで幾何をやりながら、調べ物のやり方を覚える

計算機幾何 少しずつ、なぞる。調べ物をする。 from sympy.geometry import * P1 = Point(0, 0) P2 = Point(3, 4) P3 = Point(2, -1) P4 = Point(-1, 5) S1 = Segment(P1, P2) S2 = Segment(P3, P4) "sympy"自体を調べる help(sympy) Help on package sympy:…

[Triangulation」湖に島があってその中に池がある

昨日は、輪郭(Aの字の外周〜湖があって、その中に「なかぬけ」として島(Aの字のぐるり)があるときに、Triangulationを使ってプロットした。 それを扱うためのオブジェクトとしてdict(dictionaryタイプ)というのを使っているので、それの使い方に慣れつつ、…

調べながらpythonを覚える

調べものについて 実践編〜pythonで幾何

pythonに少し踏み込む

統計処理を試す〜pandas

ごく基本的な、というか、規範的な統計処理はできそうだが、魔界のような凝ったRのパッケージが準備されているわけではないので、Rの完全な代替にはならない感じ pythonが得意とする分野はアリそう(MCMCとか、数値解析系…か?) pyperとかいうパッケージを入…

数値解析諸法に慣れる〜scipy

Scipyの主なカテゴリは以下のようにおおまかに分けられるようだ(こちら) 特殊関数 線形代数演算 高速フーリエ変換 最適化・フィッティング 補間 数値積分 信号解析 画像処理

代数(Symbolic math)を使う〜sympy

に使われるは何の値が入るかわからないわけだが、このに数値を入れずに「代数」として扱うのがsymbolic math 代数変数を作る from sympy import * x = Symbol('x') # 代数としてのx y = Symbol('y') # 代数としてのy x+2*x + y - yOut[3]: 3*x 分数も、割っ…

スライシング〜アレイ(ベクトル・行列・アレイ)の扱いを覚える2〜私のためのpythonメモ

アレイの要素へのアクセス〜スライシング アレイのスライシングはベクトルのスライシングの組み合わせ ベクトルのスライシング(こちらを参考に) ベクトルのスライシングは2大原則 「開始アドレス:終点アドレス:歩幅」の3整数で決める アドレスは、-(len(…

絵を描く〜matplotlib,mayavi〜2D & 3D

2Dプロット こちらが長くなく、よくまとまっている 3Dプロット mayaviを使う。mayaviというのは、もともと(?)pythonで作ったアプリのことで、それがここからとれる いわゆる、pythonを書きながら使いましょう、という場合は、パッケージを取ってこないとい…

フーリエ変換〜数値解析諸法に慣れる〜scipy

高速フーリエ変換 from scipy.fftpack import fft, ifft # 周期性データを作る n = 1000 # 点の数 t = np.linspace(-1,1,n) * 5*np.pi # 時刻点 k = 50 # 重ね合わせる周期関数の数 # a cos(bt+c)の係数a,b,c a = np.random.randn(k) b = np.random.randn(le…

線形代数〜数値解析諸法に慣れる〜scipy

# 適当に正方行列を作る n = 100 m = np.array(np.random.randn(n**2)).reshape(n,n) # Determinant linalg.det(m) # 逆行列 m_inv = linalg.inv(m) np.allclose(np.dot(m, m_inv), np.eye(n)) # 特異値分解 u, s, v = linalg.svd(m) s_ = np.diag(s) # 特異…

確率分布関数〜数値解析諸法に慣れる〜scipy

特殊関数には、確率密度関数・累積密度関数などがある(こちらにリスト) 統計関数は、こちら(scipy.stats)に取りまとめなおしたのが使いやすい import scipy.stats df = 3 # chi2に対して、その統計量を問い合わせ mvsk : mean,var,skew,kurtosisを指定 mean,…

アレイ(ベクトル・行列・アレイ)の扱いを覚える〜私のためのpythonメモ

アレイの基礎 '[x1,x2,...,]'がベクトルで、これの入れ子構造が、多次元ベクトル numpyのアレイは、これを「numpyのarray」という取扱い形式に乗せたもの # まず、入れ子ベクトルを作り v1 = [1,2,3] m1 = [v1,v1] a1 = [m1,m1,m1] # numpy arrayにする V1 =…

私のためのpythonメモ

1. 環境設定 2. 頭書き(ルーチン・ライブラリの読み込み) 3. ファイルの入出力 4. アレイ(ベクトル・行列・アレイ)の扱いを覚える〜numpy 4.1 アレイの要素へのアクセス〜スライシング 5. 乱数発生〜numpy.random 6. 数値解析諸法に慣れる〜scipy 6.1 特殊関…

ファイルの入出力〜私のためのpythonメモ

作業ディレクトリの指定とファイルの入出力はどうしても覚える 作業ディレクトリの指定 import os # この作業に必要なos os.chdir('C:\\Users\\ryamada\\Desktop\\python') # Windowsでは'\'が'\\'になることに注意 作業ディレクトリに出力する。np.savetxt(…

頭書きを固定する〜私のためのpythonメモ

基本ライブラリを使えるようにする 使用の最初に、以下を打つ import numpy as np # ベクトル・行列・高次元アレイを使う import scipy as sp # 線形代数・関数・数値計算 # matplotlibのpylabインタフェースは、MATLABの利用経験があるユーザがmatplotlibを…

環境設定〜私のためのpythonメモ

環境設定 インストール python(x,y)を入れる(numpy,scipyがもれなく入る) 「もれなく入るわけではない」cython,sympy,ETSは、インストール時に現れる選択画面で、python配下のチェックボックスで選んでインストールする 使用環境 python(x,y)は色々使えるが…

私のためのpythonメモ