Python 基礎 1 Numpyって何?

Pythonってなんなの?って思われるかもしれませんね。基本的な部分をブログにしてみたいと思います。Python は人工知能(AI )を開発するときに使われるプログラミング言語です。
もっと網羅的に、0から全部学びたい方はドットインスイトールや Progate などをやってみてもいいかもしれません、本でもいいと思います。
このブログでは、基礎なんかすっ飛ばして、実務で使って行きたい人向けに発信をしています。基礎からコツコツやって行きたい方には向いてないかもしれません~_~;。
もちろん、基礎からコツコツやって行っても構わないのですが、プログラミングを勉強するときにおいて、僕はそう言った勉強方法をお勧めしません。なぜなら、飽きてしまうからです。
初めて自転車に乗る時を考えてみましょう。最初に「ブレーキはここで、サドルにお尻を乗せて…」、「ペダルをこいで」というような説明はするでしょう。
まずは挑戦させて、まずは乗れるようになって、爽快な感じ、気持ちのいい感じを体感させるのが一番ですよね。
いきなり足の角度だとか、胴体の角度とか、競輪選手にしか教えないようなことは言わないですよね^_^;。
それと同じで、まずはプログラミングを楽しんでみる、実務で応用するための手順を理解する方が長く継続すると思います。
このブログを読めば大体のことはなんとなく掴めるようになるはずです。初心者の方にも理解しやすいように、わかりやすく解説するつもりです。
ある程度 python の基礎理解がある方はニューラルネットワークの実装から初めてみてもいいでしょう!
それでは始めましょう!
Numpy って何?

「NumPy」はプログラミング言語であるPythonの拡張モジュールです。NumPy を利用することで Python での数値計算をより高速に、効率的に行うことができるようになります。
数値計算を他のプログラミング言語、例えば C や Fortran などで行おうとすると数値計算が非常に煩雑になります。エラーもしやすいですし、デバグ(バグを見つけること)も大変になります。
コードを書いて説明しましょう。こちらをみて下さい↓

Google Colaboratory 上でのコードになります。グレーの部分はエディタで、白色の部分が実行結果です。Google Colaboratory ってなんだっけって人はこちらを読んでください(^◇^;)。
一行めが import numpy as np となっています。これは、「numpy の機能をインポートして使えるようにします、使うときは np で省略して使います」という感じになります。
Python では as ***** となっている場合、as 以降のワードで使う事ができます。as 以降は自由に決める事ができます。
a=[0,1,2,3,4,5,] となっていますね。これをリストと言います。リストの中では数字がカンマで区切られていますね。この中には数字だけでなく文字列を入れることも可能です。
次に b=np.array(a) となっていますね。ここで初めて np が出てきました。これは、「numpy の機能である array で a のリストを配列に変換し、 b に格納する」という意味になります。
array はメソッドの一種です。メソッドとは、「便利な機能を持つ魔法」みたいなものです^_^。いうならば、 print(x) もメソッドの一種です。ドット(.) でつながっているものをメソッドチェーンと言います。
最初で import numpy as np となっていましたよね、こんな感じで宣言してなかったらここでエラーが出ます。numpy をインポートしてないからね。
b は配列で、a はリストです。配列とリストは似ているようで別物です。リストは数値でも文字列でも格納できるのですが、配列は基本数値だけです。また、配列の中の数値はカンマではなくスペースで区切られています。
print(a) と print(b) は a と b を表示させています。例えば、print(‘おはよう’)としてやれば、「おはよう」と表示させることもできます。
次にこちら↓のコードをみてみましょう。

一行目は numpy をインポートしています。
x = np.linspace(-5,5) は、-5 から 5 までの、等間隔の数値データ配列を作るためのメソッドです。
linspace メソッドはデフォルトで 50 個の数値データ配列(リストではなく配列)を作成する事ができます。
len というのは配列の中に幾つの数値データが入っているかを数えてくれるメソッドになります。 print(len(x)) とする事で、配列の中のデータ個数を表示しているのです。
どうですか、簡単ですよね、全然難しいことなんて言ってないですよ~_~;。
やっていることなんて、せいぜい中学数学レベルです。
それでは次回に進みます!!___
コメント