Python

Python

【Python】疎結合(Loose Coupling)とは?注文通知の処理で密結合と比較しながら理解する

■概要プログラムを作っていると、「メール通知をSMSにも対応したい」「Slackにも送りたい」といった仕様変更がよく起こる。このとき、部品同士が強く結びついていると、1か所の変更のために関係ないクラスまで書き換える必要が出てくる。これを防ぐ...
Python

【Python】勉強時間・睡眠時間からテストの点数を予測する(単回帰分析・重回帰分析)

■概要データ分析・機械学習の基本となる「回帰分析」について、代表的な2つの手法である単回帰分析と重回帰分析を、最小二乗法の計算式をもとにPythonで自前実装する。回帰分析とは、「原因側の値(説明変数)」から「結果側の値(目的変数)」を予測...
Python

【Python】身長・体重データをMin-Max正規化とZ-score標準化で変換する

■概要統計・機械学習の前処理でよく使われる「正規化(Normalization)」について、代表的な2つの手法であるMin-Max正規化とZ-score標準化(スタンダーディゼーション)をPythonで実装する。単位やスケールが異なる複数の...
Python

【Python】argparseで実行時引数(コマンドライン引数)を扱いサブコマンドごとに処理を分岐する

■概要argparseモジュールを使用すると、実行時に指定するコマンドライン引数を複数・多種類扱い、値の型変換やデフォルト値、必須/任意の指定などを簡単に管理できる。今回は、指定したサブコマンド(greet/add/echo)によって処理を...
Python

【Python】シグモイド関数で年齢データから購入確率をフィッティングする

■概要シグモイド関数は、入力値を (-∞, ∞) から (0, 1) の範囲に変換する関数であり、ロジスティック回帰など「ある事象が起きる確率」を予測するモデルの基本となる関数である。今回は、年齢と商品の購入有無(0:未購入, 1:購入)の...
Python

【Python】ログの文字列「key1=value1, key2=value2,…」からkeyとvalueを抽出する

■概要以下に今回実装する処理概要を記載する。ログファイルのパスを定義関数 read_log_file() を定義ログファイルをUTF-8で開くファイルの全行を1行ずつ処理各行を '|' 区切りで分割ログ種別を判定(「02」の場合のみ以下を実...
ツール

【Python】mRNAの塩基配列から、コドンがどのアミノ酸に対応するか取得する

■概要mRNA配列(A, U, G, C で構成される文字列)を読み込み、開始コドン(AUG)から終了コドン(UAA, UAG, UGA)までを区切って「どんなコドンか」を特定する処理をPythonで実装する。▼検索結果イメージ検索対象:A...
Python

【Python】pytestの基本的な使い方

■概要Pythonのテストフレームワーク「pytest」は、シンプルで使いやすく、柔軟なテストが可能なテストツールである。▼実行環境実行環境は以下の通り。項目内容pythonバージョン3系OSMac実行環境Pycharm(統合開発環境)▼イ...
Python

【Python】よく使う標準デコレータ6つの使い方

■概要Pythonのデコレータ(decorator)は、関数やメソッドに「機能を追加する」ための仕組みであり、コードの再利用や整理に便利。▼基本的な使い方デコレータは、関数を引数に取り、新しい関数を返す関数。・サンプルコードdef my_d...
ツール

【Python】ログファイルからモジュール名・関数名ごとの処理時間を計算する

■概要ログファイルに記載されている、処理時間、モジュール名、関数名をインプットに、そのモジュールまたは関数ごとの処理時間を算出して、Json形式で出力する。▼ログファイルのフォーマットと内容ログファイルのフォーマットは以下の通り。日付(yy...