Pythonプログラミングの例と実践ガイド(目次)
【概要】Pythonを用いたデータ処理、時系列データ処理、機械学習、地図処理、ゲーム開発(Cocos2d/pygame)、OpenCV、Python拡張、環境構築、ネットワーク処理、ファイル処理、開発ツールなど、Flask、Dash など実践的なプログラミング例を網羅的に紹介する技術ガイドである。
【目次】
- データ処理
- 時系列データ処理
- 外部データソース
- ランダムデータの合成
- 機械学習
- 地図処理
- Cocos2d
- OpenCV
- pygame
- Python拡張
- 環境構築
- さまざまなPythonプログラム例
- Webアプリケーション開発の基礎と応用
- FlaskとDashのガイド(動画)
【サイト内のPython関連主要ページ】
- Windows AI支援Python開発環境構築ガイド: 別ページ »で説明
- AIエディタ Windsurf の活用: 別ページ »で説明
- AIエディタCursorガイド: 別ページ »で説明
- Google Colaboratory: 別ページ »で説明
- Python(Google Colaboratoryを含む)のまとめ: 別ページ »で説明
- 機械学習の Python 実現ガイド: 別ページ »で説明
- 行列計算の Python 実現ガイド: 別ページ »で説明
- 統計分析のPython での実現ガイド: 別ページ »で説明
- 音声信号処理の Python 実現ガイド: 別ページ »で説明
- カラー画像処理の Python 実現ガイド: 別ページ »で説明
- Python 言語によるとても簡単なアドベンチャーゲーム(変数,式,if,while,関数,print,time.sleep, def, global を使用): 別ページ »で説明
- Pythonプログラミング講座:基礎から応用まで(授業資料,全15回): 別ページ »で説明
- Pythonプログラミングの例と実践ガイド: 別ページ »で説明
【外部リソース】
- Pythonの公式サイト: https://www.python.org
- 東京大学の「Pythonプログラミング入門」: https://utokyo-ipp.github.io/IPP_textbook.pdf
- ITmedia社の「Pythonチートシート」の記事: https://atmarkit.itmedia.co.jp/ait/articles/2004/20/news015.html
データ処理
基本操作
- Pandasデータフレームの表示、形、次元数の確認(Python、pandas、Irisデータセットを使用)(Google Colaboratoryへのリンク有り)
- ポケモンデータセット(CSVファイル)の読み込みと散布図(Python、pandas、matplotlib、seabornを使用)
- Pandasデータフレームの基本情報の表示、散布図、要約統計量、ヒストグラム(Python、pandas、matplotlib、seaborn、Irisデータセット、titanicデータセットを使用)(Google Colaboratoryへのリンク有り)
集計と問い合わせ
- Pandasデータフレームの集計集約(グループごとの数え上げ、最大、最小、平均、中央値、和)(Python、pandas、matplotlib、seaborn、Irisデータセット、titanicデータセットを使用)(Google Colaboratoryへのリンク有り)
- SQL問い合わせ(Python、pandas、pandasqlを使用)
時系列データ処理
- Pythonで現在日時の取得、秒の切り捨て、日時の引き算
- Pythonで文字列を日時データに変換、時分秒の切り捨て、日時の比較、日時データの数え上げ
- Pythonで日時と流量のデータを扱う(作成中)
- 時系列データのプロット(Python、matplotlib、seabornを使用)(Google Colaboratoryへのリンク有り)
外部データソース
Excelファイル
別ページに記載している: オープンデータ、データファイル処理
オープンデータのAPI
別ページに記載している: オープンデータ、データファイル処理
ランダムデータの合成
機械学習
次元削減
- Irisデータセットの主成分分析プロット(Python、matplotlib、seabornを使用)
- CIFAR-10、CIFAR-100、MNIST、Fashion-MNISTデータセットの主成分分析プロット(Python、matplotlib、seabornを使用)
- Irisデータセットの次元削減(t-SNE、Isomap、Spectral Embedding、LLE、kernel approximation法)(Python、scikit-learnを使用)
クラスタリング
- k-means、Mean Shiftクラスタリング(Python、Google Colaboratoryを使用)
- VBGMM(Variational Bayesian Gaussian Mixture)を用いたクラスタリング(Python、scikit-learnを使用)
地図処理
- マーカー付きのOpenStreetMap地図(Python + leaflet.js + foliumを使用)
キーワード: OpenStreetMap、Python、leaflet.js、folium、タイル地図、マーカー
- マーカーとイメージポップアップ付きのOpenStreetMap地図(Python + leaflet.js + foliumを使用)
- 緯度経度などのデータファイルから、マーカーとイメージポップアップ付きのOpenStreetMap地図プログラムを生成
- foliummapod
Cocos2d
Pythonでキーボード、マウス、線や四角形描画を行う。
WindowsでのCocos2d、pygame、pygletのインストールは別ページ »で説明している。
- Cocos2dを使ってみる
- Cocos2dのイベント、キーコード、イベントハンドラ、アクション
- Cocos2dで、オブジェクトの属性を乱数で変化させる
- Cocos2dで動きのシミュレーション
- Cocos2dサンプルプログラム
- Cocos2dを用いたスプライト表示
OpenCV
OpenCVとPythonを使用した画像処理,ビデオ処理,および関連技術の解説リンク集.画像表示,色空間変換,ノイズ除去,2値化,輪郭抽出などの基本的な処理から,ステレオマッチング,顔検出,イメージスティッチングなどの高度な技術まで.
画像処理技術の基礎から応用(OpenCV,Python使用)
- OpenCV で画像の表示(OpenCV,Python を使用)
- OpenCV で濃淡画像を使う(イメージヒストグラム,ヒストグラム平坦化,ノイズ除去,2値化,輪郭抽出)(OpenCV,Python を使用)
- OpenCV で RGB から LAB への色空間の変換(OpenCV,Python を使用)
- OpenCV で画像のノイズ除去(OpenCV,Python を使用)
- OpenCV でカラー画像を濃淡画像に変換(OpenCV,Python を使用)
- OpenCV でヒストグラム平坦化(OpenCV,Python を使用)
- OpenCV でOTSU の方法による 2値化(OpenCV,Python を使用)
- OpenCV で適応的 2値化(OpenCV,Python を使用)
- OpenCV で GrabCut 法による前景背景分離(OpenCV,Python を使用)
- OpenCV で GrabCut 法による前景背景分離を行ってみる(Python を使用)
- OpenCV でオープニングによる 2値画像からの小領域除去(OpenCV,Python を使用)
- 2値画像の領域から面積などを求める(OpenCV,Python を使用)
- OpenCV で Canny エッジ(OpenCV,Python を使用)
- OpenCV でカラーヒストグラム(Python を使用)
- OpenCV で HoG 特徴量(OpenCV,Python を使用)
動画処理とカメラの活用(OpenCV,Python使用)
- OpenCV でビデオカメラ画像の表示(Python を使用)
- OpenCV でビデオカメラ画像の表示,ファイル書き出し,濃淡画像処理(Python を使用)
トピックス:カメラ画像の表示,カラー画像から濃淡画像への変換,動画ファイルの書き出し・ヒストグラム平坦化,OTSU の方法による2値化,輪郭抽出 - カメラ画像を枠なし表示(Python, OpenCV を使用)
- OpenCV でビデオのフレーム間差分,トラッキングビジョン,オプティカルフロー(Python を使用)
高度な画像処理技術と応用(OpenCV,Python使用)
- OpenCV でステレオマッチング(OpenCV,Python を使用)
- カメラのステレオマッチング(OpenCV,Python を使用) OpenCV で顔検出(OpenCV,Python を使用)
- OpenCV で点や線の描画(OpenCV,Python を使用)
- OpenCV でイメージ・スティッチング(OpenCV,Python を使用)
- OpenCV でマウスイベント(OpenCV,Python を使用)
pygame
Python拡張
環境構築
さまざまなPythonプログラム例
ネットワーク関連
ファイル・システム関連
開発ツール
- PythonのFireを使ってみる(コマンドインタフェースの自動生成)
- Flaskのインストール、Webサーバを動かしてみる
- PyEnchant(Pythonで動くスペルチェッカー)のインストールと試用(Windows上)
データ処理
Webアプリケーション開発の基礎と応用
- Flask のインストール, 動作確認
Windows と Ubuntu 環境での Flask のインストールと動作確認の手順を説明している.Python の準備,Flask のインストール,基本的な Web サーバの動作確認,ルーティングと変数の機能確認までを段階的に解説している.
- Dash のインストールと動作確認
DashはPythonで作られたWebアプリケーションフレームワークで,インタラクティブなグラフや表の表示が可能です.WindowsとUbuntuでのインストール手順,基本的な使用方法,データの定期更新機能の実装方法を説明しています.
- Python のデータフレームを Web ページに表示(Dash を使用)
- Dropzone のインストール
- WordPress (Ubuntu 上)で Python プログラムの実行結果を表示
FlaskとDashのガイド(動画)
- Flask のインストールと基本(Windows 上)
YouTube 動画: https://www.youtube.com/watch?v=vFzBn49FTU4
- Dash のインストールと基本(Windows 上)
YouTube 動画: https://www.youtube.com/watch?v=oMecQ09UtzU
- Dash でできることの基本を実演(Windows 上)
YouTube 動画: https://www.youtube.com/watch?v=o6c8Ejef8gg