まずは基本編からこれから始めるかたの参考になれば幸いです。

[Sponsored Link]





ファイル名

Pythonファイルの拡張子は「.py」となる。
対話型で直接Pythonのプロンプト画面でコードを書いても良いが(←どこでバグっているか検証に便利)、一度作ったソースコードは一括で実行したいので、この.pyファイルをコマンドライン(Windowsの方はコマンドプロンプト/マックの方はターミナル)で実行すれば良い。

その際先頭にPythonと打ってからファイルを実行する。

ツール

私は重たいのが嫌で使っていないが、Pythonにも統合パッケージされた便利なツールがある。

・複数のPythonバージョンを管理したい

anacondaが有名なのでこれ一択ですが、フルパッケージド番は重たいので軽量版のminicondaがお勧め。

過去バージョンはそれぞれ以下のページでダウンロードできる。

なお、anacondaにはJupyter NotebookやPythonライブラリがごっそり自動的にダウンロードされるが、Minicondaには最小限のものしかダウンロードされないので、Minicondaを使っている場合は以下のようにJupyter Notebookもダウンロードする必要がある。

・ダイレクトに綺麗に描画したい

anaconda内に入っているJupyter Notebookを使います。使い方は調べれば出てくるので参考にしてください。postgresqlの最新版のようなブラウザ上のGUIから(動いているのはlocalhost)Pythonを操作できるので慣れない方にはこちらがお勧めとされている。

ExcelやTableauと連携して描画するし、余計なパッケージが最初から色々入っているのは嫌だ!という方は上記は使わなくても良いかと思います。

headerのおまじない

.pyファイル先頭に記述するおまじない、1行目はshebang(シバンまたはシェバンと読む)・・・でコードの意味はPuthonが共存している環境、例えばMacだとシステムで使っているversion2.x系が混在してしまうので明示的に記述してあげればよい。2行目は見ての通りだが、文字コードの指定でこれも明示的に書いてあげると良い。尚Python3系ではデフォルトでUTF-8になっているとのことなので書かなくても大丈夫っぽい。

pip コマンド

インストールされているライブラリの確認

新規にライブラリをインストール

アンインストール

バージョンを指定してインストール

pip自体のアップグレード

CSVの読み込み

とにかくむちゃくちゃ使う。ライブラリでpandasを使っているバージョンとレガシーなものを記載しておきます。

・pandasでの操作

記述方法は 変数名 = pd.read_csv(‘example.csv’) となる。

※タブ区切りのファイルの場合は、read_csvではなくread_table()とすればよい。
※sep=’\t’ のように改行コードをsepに直接書くこともできる。

読み込みファイルの文字コードがshift-jisで保存されていると、pandasに怒られるのできちんと指定してあげる必要がある。下記のように第二引数以降にオプションを指定してあげれば良い。大文字小文字の区別はしていない模様

オプションには様々な指定方法が存在するが、例えばヘッダーが管理用に2-3行用意されていて、SkipHeader(n)したい場合業務では多々あると思います。pandasではSkipHeader(n)がないので、読み込みヘッダー行数を指定する。

逆にヘッダーがない・・・(書いとけや!)というデータは header=None とつけると連番だけ振ってくれる。

引数にnamesを使えば任意のカラム名前を付けることも可能だが、数が多いと面倒なので、ビッグデータ向きのCSVエディタや、サーバーサイド(SQL)でやってあげた方が良さそうな気もます。

・レガシー版

pandasを使っていない(使わない事はあまりないけど)処理速度の関係からレガシーな構文(組み込み関数を使って)を使って書くことも多いかと思います。

また教科書的にはopen()を使ってファイルを開くが、close()とSETで使わないといけない(閉じ忘れが多いので)、下記のようにwith openを使って自動的に閉じてもらう構文を使用するのが良いです。

printしてみる↓↓

第二引数の r は読み書きmodeとなっており、以下の様にいくつかのパターンが存在する。

r = 読み出し専用
r+ = 読み書き専用
w = 書き込み専用(同名の既存ファイルがあれば消去)
a = 書き込み追記(ファイルの終端に追加)
b = バイナリモード(文字列のファイルではない場合はコチラを使用)

複数使用したい場合は ‘rb’ ‘r+b’ と言った具合にすぐ後につなげて書けばよい(区切り文字は不要)

CSVへの書き込み

オプションの設定は前記した読み込み時の引数を参考にしてください。

・pandasでの操作

to_csv()メソッドで書き込む。

・レガシー版

他の言語と同じようにPythonもwriteで書き込める。文字列以外はエラーになるので文字列型変換strでネストしてあげれば良い。

print

検証などでとりあえず出力することは多いでね、もちろん使えます。
print(変数名 or file名 or 文字列など)

よく使うパッケージ ※更新中

anacondaとかは重くて使えないので、自分でインストールするのがおすすめ。
数えたら50個以上あったので必要最低限なものを載せておきます。業務によって大分ばらつきがあるかも。

またライブラリではないですが結果の描画には Gephi という外部ツールを使うと3Dでかっこいいグラフを作成することが可能です。

サンプルデータセット

https://www.kaggle.com/

https://signate.jp/profile

で探せば出てきます。タイタニックとか有名ですね。

参考外部サイトリンク

Pythonドキュメント英語版
 └Pythonエンコードについて
Pythonドキュメント日本語版
 └CSVの読み書き
 └読み書き込みmode
 └エンコード一覧
 └組み込み関数