PythonのIDE「Spyder」を使って、行列演算をやってみた。

Jack


PythonのIDE「Spyder」を使って、行列演算をやってみた。

こんにちは。ディレクターのジャックです。

本日は、PythonのIDE「Spyder」を使って行列演算をやってみるネタです。

Pythonとは?

まずはPythonについて簡単に紹介します。
言わずもがな! っと思った方は結構多いかと思いますが、紹介させていただきます。

Pythonとは、汎用プログラミング言語の一種で、コードがシンプルで扱いやすく設計され、C言語などに比べてさまざまなプログラムを分かりやすく、かつ少ないコード行数で書けるという特長を持ちます。

Spyderとは?

次に、Spyderについて紹介します。

Spyderとは、Pythonで科学用途のプログラミングをすることを意図して作られたIDE(Integrated Development Environment=統合開発環境)のことです。

NumPyやSciPyなど、科学用途の計算をするために必要なライブラリが揃っています。

簡単なデータ分析用に色々とIDEを使ってみたのですが、最終的にこれが一番落ち着きました。Anacondaというツールを使って簡単にインストールできるので、面倒くさがりの自分にとってはピッタリです。

Anacondaをインストールした環境では、デフォルトでSpyderがインストールされています。

起動してみる

下記コマンドで起動することができます。

% spyder

起動すると、下記画面が立ち上がります。

Spyder起動画面

お決まりの「Hello, World!」をやってみる

Spyderのエディタに下記Pythonスクリプトを記述してください。

# -*- coding: utf-8 -*-
"""
Spyderエディタ

これは一時的なスクリプトファイルです
"""
def main():
    print('Hello, World!')
    
if __name__ == '__main__':
    main()

実行してみる

runfile('/Users/yamashita_kazuhiko/.spyder-py3/temp.py', wdir='/Users/yamashita_kazuhiko/.spyder-py3')
Hello, World!

11行目に「Hello, World!」という文字列が表示されました。

行列演算をしてみる

Spyderのエディタに下記Pythonスクリプトを記述してください。

# -*- coding: utf-8 -*-
import numpy as np
from numpy import linalg as la

m1 = np.matrix('1 2; 3 4')
m2 = np.matrix('5 6; 7 8')

# 和
print("#### 和")
print(m1 + m2)

# 差
print("#### 差")
print(m1 - m2)

# 要素同士の積
print("#### 要素同士の積")
print(m1 * m2)

# 要素同士の商
print("#### 要素同士の商")
print(m1 / m2)

# m1の逆行列
print("#### m1の逆行列")
print(la.inv(m1))

実行してみる

実行結果を下記に記載します。たった一行のコードで簡単に行列演算ができましたね。

runfile('/Users/yamashita_kazuhiko/.spyder-py3/temp.py', wdir='/Users/yamashita_kazuhiko/.spyder-py3')
#### 和
[[ 6  8]
 [10 12]]
#### 差
[[-4 -4]
 [-4 -4]]
#### 要素同士の積
[[19 22]
 [43 50]]
#### 要素同士の商
[[ 0.2         0.33333333]
 [ 0.42857143  0.5       ]]
#### m1の逆行列
[[-2.   1. ]
 [ 1.5 -0.5]]

おわりに

いかがでしたか?

PythonとSpyderを使うことにより、簡単に行列演算をすることができました。

次回は、もう少し踏み込んでPythonで統計解析をおこなってみたいと思います。

Jack
この記事を書いた人
Jack

デューサー

関連記事