python

twythonの導入とテスト

pythonを使ったtwitterのbotを作るために、twythonを導入してみた。はじめはpython-twitterで試そうとしたが、「APIが古い」エラー(The Twitter REST API v1 is no longer active. Please migrate to API v1.1)が出たので、API v1.1に対応しているtwythonに…

setuptoolsのセットアップ

「Pythonで一番最初に入れるべきパッケージ setuptools と pip」というサイト Pythonで一番最初に入れるべきパッケージ setuptools と pip - Life with Python があったので、setuptoolsをインストールすることにした。このサイトの右側のダウンロードボタン…

Python2.xとPython3.xの共存

こちらを参考にする。複数バージョンのPythonをインストールするこれでpython3系のnumpyとか使えるか試してみよう。

pythonで主成分分析

pythonで主成分分析をしてみた。 #! usr/bin/python # -*- coding:utf-8 -*- import numpy as np import scipy as sp from scipy import linalg import csv # imput data fileName = './input/pcaTest.csv' inputCSV = csv.reader(open(fileName,"rb")) #dat…

csvから行列作成

Rだと、read.table関数で一発でデータをデータフレームに変更してくれる。 pythonで似たようなことができないかなーと思い書いてみた。 #! usr/bin/python # -*- coding:utf-8 -*- import numpy as np import scipy as sp import csv filename = "./input/in…

pythonによる2次計画法

pythonで2次計画法を解くのにCVXOPTを使った。 Rのquadprogと違って、等式制約をそのまま使えるらしい。例題はこちら↓ http://abel.ee.ucla.edu/cvxopt/examples/tutorial/qp.html #!/usr/bin/python # -*- coding: utf-8 -*- from cvxopt import matrix fro…

pythonによる最急降下法

最急降下法は、関数の最適化を行う手法として一番単純である。 多変数の場合、途中で直線探索を行う必要がある。 今回も参考図書は、金谷健一「これなら分かる最適化法」である。最適化したい関数は とする。 #!/usr/bin/python # -*- coding: utf-8 -*- imp…

pythonによる直線探索

関数の最適化を行う手法として一番単純なのが最急降下法である。 1変数の場合の最急降下法を実装してみた。最急降下法の場合、気にしないといけないのが「1ステップあたりどれだけ進むか」というステップ幅である。上に凸な関数な場合これを決める方法として…

連成振動をグラフ化してみた

matplotlibを使って昨日書いた連成振動をグラフ化してみた。 #!/usr/bin/python # -*- coding:utf-8 -*- import numpy as np from scipy import stats import matplotlib.pyplot as plt #-- initialization m = 1.0 k = 1.0 kappa = 1.0 dt = 0.01 omega1 = …

連成振動をpythonでシミュレーションしてみた

行列計算と正規分布が使えるようになったので、バネマスの連成振動を状態空間モデルで解いてみることにした。・2質点系 ・減衰、外力は働かないが、観測時に観測誤差が入るとするmatplotlibとかで出力できるとかっこいいのだが、とりあえずはファイル出力す…

SciPy で正規乱数を発生させる

SciPyを使って正規乱数N(mu,sigma)を発生させるには、SciPyのstatsを利用する。 #!/usr/bin/python # -*- coding:utf-8 -*- >>>import numpy as np >>>from scipy import stats #-- 正規分布N(0,1) >>>mu = 0 >>>sigma = 1 >>>print stats.norm.rvs(0,1) [[ …

numpyの行列作成方法

pythonのnumpyの行列で、等差級数な行列(ベクトル)の作り方メモ。1.等間隔(間隔指定)なベクトル #!/usr/bin/python # -*- coding: utf-8 -*- >>>import numpy as np >>>print np.arange(2,3,0.1) [ 2. 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9] 2.0から3.0まで…