数学ソフトウェアパッケージOCTAVEを使ってみた

この言語は線形代数が得意で行列、複素数、三角関数など数学の問題を解くのに便利である。50年前を思い出しながら行列演算をやってみた。

数学ソフトウェアパッケージOCTAVEを使ってみた

online seminar「機械学習」(Stanford U. Andrew Ng先生)で使っているといわれる、OCTAVEを使ってみた。
この言語は線形代数が得意で行列、複素数、三角関数など数学の問題を解くのに便利である。
関数をプロットするのも得意でアイキャッチ画像を見ていただければわかると思う。
このソフトウェアはMATLABとほぼ互換性があるということだ。
インストールも簡単である。
最新Versionは4.4.1でCLIとGUI版両方を持っている。
50年前を思い出しながら行列演算をやってみた。
簡単にできた。

plotした関数

行列演算の様子


↑人気ブログランキングに参加しています。よろしければ1票を!

オブジェクトとインスタンス

これからは「Deep Learning」と「Python」と「Access」を交互に進めていくことにした。

オブジェクトとインスタンス

久しぶりに「Python3」のマニュアルに戻った。
これからは「Deep Learning」と「Python」と「Access」を交互に進めていくことにした。
今回は「Python」インスタンスについてである。

↑人気ブログランキングに参加しています。よろしければ1票を!

Python(変数と組み込み型)

Python(変数と組み込み型)

Python(変数と組み込み型)をまとめました。
I. 変数と組み込み型
1. コレクション型

シーケンス型 文字列、リスト、タプル
マップ型 ディクショナリ

2. 変更可能、変更不可能

変更可能な組み込み型 リスト、ディクショナリ
変更不可能な組み込み型 文字列、タプル

3. 組み込み型
Pythonでよく使われる組み込み型
Pythonでは代入を行うことで新しい変数を作る
例)mach = 1225
topspeed = 40000
topspeed / mach
数値 数を表現するために利用するデータ型です。数値の精度によって整数型、浮動小数点型に分かれています。
[例] 10、3.1415、0xFF、0b110
文字列 文字を順番に並べたテキストデータです。
[例] “abc”、”string”、”日本語”
リスト 複数の要素を順番に並べて利用するためのデータ型です。リストには、数値や文字列を入れたり、リストにリストを入れることもできます。リストにはいろいろな型のオブジェクトを入れることができます。リストに入っている要素は順番(インデックス)を使って指定したり取り出すことができます。また、要素を自由に追加したり、削除することができます。
[例] [1,2,3]、[“python”,”あいう”,[4,5,6]]
タプル リストと同じで、複数の要素を順番に並べて利用するためのデータ型です。一度定義したら要素の追加や変更ができないのがリストと異なる点です。
[例] (1,2,3,4)、(“abc”,5,”def”)
ディクショナリ
(辞書) リストと同様に、複数の要素を入れることができるデータ型です。要素を順序で管理する代わりにキーと呼ばれる索引を使って管理します。キーを使って要素を追加したり、取り出すことができます。
[例] {‘spam’:’スパム’,’ham’:’ハム’,1:’one’}
ほかにbool型、byte型、set型などがあります。

4. int()関数
文字列を数値に変換する。
5. float()関数
小数点の付いた文字列を数値(浮動小数点型の数値)に変換する。
6. 数値を文字列に変換する
str()
7. 文字列の長さを調べる
len(文字列)
8. 文字列の置換や検索を行う
検索したい文字列 in 検索対象の文字列
TrueやFalse(真偽(bool)値)
9. メソッドを使った処理
1) 文字列.replace(検索文字列,置換文字列)
2) replace()メソッドを呼び出しても、元の変数は変わりません。
10.インデックスを使って要素を取り出す
  1) digits = “1234”
digits[2]
→‘3’
11.1文字の文字列を文字コード(キャラクターコード)相当の数値に変換する
1) ord(文字列)
ord(digits[2])
→51
12.文字コード(数値)から1文字の文字列を得るには
1) chr(数値)
chr(52)
→’4’
13.リストを使う
a = [1, 2, 3, 4, 5]
1) インデックスの利用
a[2]
→3
a[-1]
→5
14.スライスを利用して要素を取り出す
1) a[1:3]
→[2, 3]
2) a[3:4]
→[4]
コロン(:)の後ろに指定する数値には、取り出したい要素のインデックスに1を加えた整数を指定する必要がある。
3) a[2:]
→[3, 4, 5]
4) a[:3]
→[1, 2, 3]
5) a[2:100]→エラーにならない
→[3, 4, 5]
6) リストを使った足し算、掛け算
a) リストを足し算すると連結になります
b) リストを掛け算すると同じものをその回数分繰り返します
a = [1, 2, 3] * 3
→[1, 2, 3, 1, 2, 3, 1, 2, 3]
c) 要素の置き換え、削除
a = [1, 2, 3, 4, 5]
a[1] = “二”
→[1, ‘二’, 3, 4, 5]
d) リストの要素を削除するにはdel文を使います
del リスト[インデックス]
e) リスト要素の検索
検索値 in リスト
→True、Falseで返る
f) ある要素が何番目にあるかどうか調べるには、リストの持つindex()メソッドを使う。リストに存在しない要素を渡すとエラーになる。
g) リストの最大値、最小値
max(リスト)
min(リスト)
h) リストのソートと順序の反転
リスト.sort()
リスト.reverse()
i) リストで利用できるその他のメソッド
リスト.append(追加要素)
append()はリストの末尾に要素を追加する。
j) リストの要素を分割してリストの末尾に追加したい場合には、extend()というメソッドを使う。
リスト.extend(追加するリスト)
a = [1, 2, 3, 4, 5]
a.extend([200, 300, 400])
→[1, 2, 3, 4, 5, 200, 300, 400]
k) 多次元配列をリストで表現する
            board = [[0, 0, 0, 0, 0, 0, 0, 0],←0番目のリスト
[0, 0, 0, 0, 0, 0, 0, 0],←1番目のリスト
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 1, 2, 0, 0, 0],
[0, 0, 0, 2, 1, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0, 0, 0]]
             board[3][4]
→2
l) ディクショナリ(辞書)を使う
             ディクショナリでは、順序の代わりに(Key)で要素を管理します。
         ディクショナリでは、見出し語と対応する要素を紐づけて管理する。
        ディクショナリを定義する
        キーを使って要素を取り出す
        ディクショナリに新しいキーと要素を追加する
        キーを使って要素を削除する
        キーの一覧と確認
m) タプルを使う
          タプルがリストと異なるのは、要素を書き換えることができない
          タプルを定義する
          t = (1, 2, 3, 4, 5)
t[1]→2
t[2:4]→(3, 4)
・タプルの足し算
          ・タプルの利点
        n) 組み込み型相互の変換
          ・list([シーケンス])
          ・tuple([シーケンス])
          ・str([オブジェクト])
          ・a = list(t)
→[1、2、3、4、5]
          ・t2 = tuple(a)
→(1, 2, 3, 4, 5)

↑人気ブログランキングに参加しています。よろしければ1票を!

Python開発環境構築

Python開発環境構築

Python開発環境構築を行った
途中トラブルも見舞われ構築に3日もかかってしまった
まだAtomの操作に慣れていないのでこれからというところ
構築に関してメモを取ったのでここに表示する
最初32bitでPython開発環境を構築しようとしたが
途中64bitに変更したので読者は迷われると思う
でも実行時に両者を選択できるので両システムをインストールしても問題ない

Python開発環境設定
2018/05/09
① Python開発環境設定手順(当文書)作成
② 64bitに合わせる(両方混在)
1) 今ある64bitをアンインストール
2) 32bitと64bitの残骸を削除
3) 32bitと64bitの環境変数を削除
4) 64bit on win32で行く
5) エラーメッセージの検討
・どのモジュールが64bit?
・python -m pip install ipykernel(コマンドプロンプトで実施)
・python -m ipykernel install – -user(コマンドプロンプトで実施)
③  Sign in to GitHub・GitHubでRepository Nameを設定
1) x86-64 executable installer(32bitも混在できる、実行時選択)
・Customize installation
・☑install launcher for all user(Recommended)
・☑Add Python 3.7 to Path
・Optional Fitures
全部に☑
・Advance Option
下の2つにはチェック無(その他は☑)
④ Gitの再インストールは必要?→不要
⑤ Atomの再インストールは必要?→不要
⑥ Atom のインストール
1) Hydrogen(日本語化は済)
・Setupインストール(各種パッケージのインストール)
2) Atomのhydrogenの設定で右端のCopyを押す
・utf-8で秀丸エディタを使って作成
・Atomの環境設定でペースト(どこで?)→Atomでやる→IDLEは使わない
⑦  Repository Nameに新規に「X/MyPythonPrograms」と名付ける
1) ??Data
2) ??DataPython
3) ??????
⑧ 日本語化の再インストールは?(Atomについて)→不要
⑨ Atomの実行の仕方
⑩ PythonのGitHubとAtomによる環境構築について
⑪ 整合性が取れているのはどのモジュール同志か?→混在可能
⑫ Welcomeの頁でbin,srcなどのFileをcheckしてみる(32bitか64itか?)
⑬ Control Panelで全関係モジュールを洗い出す(リスト有)
⑭ Atomのタブと空白を混在させないための機能があるか?(atom-beautifyインストール)

Atomの実行
2018/05/09
① 開発環境の開始方法
1) GitHub Desktop Iconをダブルクリック
2) 表示された画面のRepository IconメニューのOpen in Atomをクリックする
3) IDLEは使わない
・実行Windowを中心に持ってくるとエラーが出ない
・IDLEではなしにインタラクティブシェルを使う
・テストの時もAtomを最初から使う
②  Atomの実施
1) .pyモジュールを実行結果のWindowを中心下で行うとエラーが出ない
2) ショートカットキー
・Atomのコードを実行
a) Alt + R ・・・・・・・実行開始
b) Ctrl + Shift + C ・・・実行停止
c) Ctrl + S ・・・・・・上書き保存
・Version名は#(コメント文に)
・Path名も#(コメント文に)
③  TerminalのOperationを覚える
④ Atomのモジュールも適宜インストール

※上記の事柄について当サイトはいかなる責任も持ちません。単なる参考として考えてください。

↑人気ブログランキングに参加しています。よろしければ1票を!

Python学習中

Python学習中

学士会報の最新号の「U7」に7大学書籍ランキングBEST5が載っている。
そのうち3大学で「Python」関連の書籍があった。
興味を持って調べてみると、「AI」や「WEB」を作るのにも利用されているようだ。
また、「Youtube」にもこの言語が使われている。
この言語はオブジェクト指向スクリプト言語である。
この言語の予約語は33でほかの言語と比べてかなり少ない。
これは文法が易しく可読性に優れているといえる。
他の言語は文のインデントは文法上は無視してもよいが「Python」では異なる。
「AI」、「WEB」でも使えるという事で私はやってみることにした。
早速関連書籍を購入し、この言語を私のPCにインストールし、使ってみた。
インタラクティブシェル(対話型シェル)は使いやすくやってみてすぐにできた。
私はこの言語が好きになりそうである。

納車時のお礼の花束

息子が社用の車を購入した。
車のディーラーからは素敵な花束を頂いた。
息子から嫁さんにこの花束をそのまま送って、我々も楽しんだ。

↑人気ブログランキングに参加しています。よろしければ1票を!