2021-01-01から1年間の記事一覧

Python 大文字,小文字を区別せずにソートする。逆順にソートする。sorted()関数

本記事では、リストに対して、組み込み関数sorted()によりリストを作成する例を載せました。次のような小文字と大文字が混在してるアルファベットを要素とするリストを例とします。 my_list = ['a', 'B', 'c', 'D', 'x', 'y', 'Z'] 1. 文字サイズを区別して…

Python 指定列に対して、リスト内の値と一致する要素がある行を複数一括で抽出する「Pandasのquery」

例題データは、機械学習でお馴染みのアイリスデータセットを用いました。150行×5列のデータです。 本記事でやりたいことは、例えば、sepal_lengthという列(カラム)に対して、5, 5.5, 6の値である行を全て抽出したい場合に適用し、次のようにします。リスト…

Python 指定パス内のフォルダ容量の一覧表を作成する

本記事では、指定したパス内にある全てのフォルダ(ディレクトリ)の容量サイズを取得して、降順にソートしてcsvファイルへ出力する雛形コードを載せました。 下図がその実施例で、指定したパス「D:/program/python/98_抽出」内のフォルダ毎の容量をランキン…

Python 行数を増やしつつ、特定の要素へ値を代入する「Pandas」

例えば、下図のように150行のデータがあったとします。 本記事では、例えば、下図のように154行に増やしつつ、列名「petal_width」と「species」に値を代入して、その他の列にはNaN(float型)とする雛形コードを載せました。 ■本プログラム #!/usr/bin/env py…

Python 列名部分一致で列を複数選択する「pandasでstr.contains()」

列名が山ほどあって、列名(カラム名)に特定の文字列がある列だけを抽出したい場合もあるかもしれません。その雛形コードを載せました。 例題データは、機械学習データセットで有名なアイリスを用いました。これのcsvはネットで検索すれば出てきて、例えば…

Python カテゴリ変数の種類と数を調べる「Pandasのgroupby」

'21/07/09更新:カテゴリ変数をリスト化したり、数や平均値でソートする方法を追記しました。 本記事では、例えば下図のように「species」というカテゴリ変数を調べる雛形コードを載せました。例題に使用したデータは、機械学習でお馴染みのアイリスデータセ…

Python ボックスプロットを作成する「seaborn」

本記事では、下図のようなBox Plotを作図する雛形コードを載せました。 使用したサンプルデータは、機械学習でお馴染みのアイリスデータセットです(下図)。 ■本プログラム #!/usr/bin/env python # coding: utf-8 # In[1]: import pandas as pd df = pd.read…

Python 思い出の写真をコメントと共に動画にする「OpenCV」

本記事では画像ファイルを繋げて動画にする雛形コードを載せました。下図は、ここ数年でワタクシが呑んで写真を撮った日本酒の一覧で61枚あります。写真の解像度はバラバラであっても、指定したサイズ(本コード中では1920×1080)に調整する仕様のため問題な…

Python サブフォルダ一覧を取得する。または,指定した拡張子のファイル一覧を取得する「pathlib」

本記事では、表題の2つの雛形コードを載せました。 ■1. カレントディレクトリ以下のサブディレクトリ一覧を取得したい場合 import pathlib # カレントディレクトリ以下のサブディレクトリを取得する get_dir_list = list(pathlib.Path('.').glob('**')) for …

Python 外れ値を除去する

本記事では、外れ値を削除する雛形コードを載せました。判定には、四分位範囲の考え方を用いたコードです。その定義では、下側25%(中央値の下側の更に中央値)、上側75%(中央値の上側の更に中央値)点を取得して、その幅から計算して除去するラインを決…

Bash 変数に値を代入して、その変数で計算した結果変数を使う

変数に値を代入する場合はスペースを入れずに、次のように詰めて書きます。 n=20 つまり、次のようにスペースを入れて書くとエラーになります。 n = 20 次に、演算は先頭に$を付けて2重カッコの中に次のように書きます step=$((計算式)) そして、その結果を…

Python df.hist()で見た目の良いヒストグラムを作成する方法

ヒストグラムは、pandasを使えばそのデータフレーム形式dfを用いて、df.hist()の一行だけで作図できます。しかし、列数が多い場合に下図のように見栄えがよろしくなくなる場合がある。タイトルが上隣のグラフに重なったり、数字が半分見えなかったりするので…

Python 「matplotlib」*c* argument looks like a single numeric RGB or RGBA sequence

本記事では、表題の警告が出た場合に、表示させないようにするための対策を載せました。下記をインポートして設定します。 from matplotlib.axes._axes import _log as matplotlib_axes_loggermatplotlib_axes_logger.setLevel('ERROR') ちなみに、警告の全…

Bash forループにより、指定した拡張子のファイルを複数取得する。更に、拡張子なしファイル名等を取得する

本記事では、表題のことをなす雛形コードを載せました。下図は、その例で4つの処理結果をechoで表示したものです。上から順に1. 指定したディレクトリ内のcsvファイルのパスを取得、2. 拡張子なしのファイルパス、3. ベースネーム、4. ベースネームに新たな…

Python 動画の再生速度を変更して保存する「OpenCV」

'22/09/03更新:動画編集の進捗状況をprint出力によりわかるようにしました。また、完了後に、処理に要した時間をprint出力するコードも追記しました。 本記事では、表題の雛形コードを載せました。FPS(Frame Per Second)で速度調整します。一枚あたりのフレ…

Python 「Pandas」表示桁数フォーマットを指定する

本記事では、「小数第一表記」と「指数表記」の2つの例を載せました。はじめに、処理前のデータは下記のように小数点以下の桁数が列毎に色々あります。 import pandas as pd df = pd.read_csv('test_data.csv') df それを次のようにフォーマット指定すること…

Python 工程能力指数Cpkを計算する「pandas」

本記事では、csvファイルから各列のCpk(cpu, cplの小さい方)を計算して、csvファイルに出力する雛形コードを載せました。 また、下図のようにヒストグラムも作成します。 使用した例題のcsvデータの作成方法は、次のリンク先を参照下さい。https://hk29.ha…

Python 複数のリストからpandasデータフレームを作成する

本記事では、2つ以上のリストからpandasデータフレームを作成する下記のような雛形コードを載せました。 import pandas as pdA_list = [355, 157, 97, 70, 57, 49, 43, 37, 33, 29]B_list = list(range(1, 11))C_list = [chr(ord("a")+i) for i in range(26)…

Python 円グラフを作成する「matplotlib」

本記事では、下図のような円グラフを横並びで複数作成する雛形コードを載せました。 下図が使用したcsvデータです。 上記数値データは、次のリンク先の値を引用しました。http://www.stat.go.jp/naruhodo/4_graph/shokyu/obi-graph.html ■本プログラム #!/us…

Python 縦棒グラフの上にその数字を表示する「matplotlib」

本記事では、下図のような縦棒グラフを作成する雛形コードを載せました。 例題データは、下図のようなcsvファイルから、データをソート(並び替え)して上図を作成します。 ■本プログラム #!/usr/bin/env python # coding: utf-8 # In[1]: import pandas as …

Python 平均±3σの折れ線図を作成する「matplotlib」

本記事では、表題のことを成す雛形コードを記載しました。点は平均値で、上下に伸びてるエラーバーがここでは±3σを表します。 グラフ化する例題データは、下図のようなcsvファイルです。A列「month」をx軸にして、B列「data」に対してmonthのカテゴリ別に平…

Python 複数のインデックス番号の行を残すor削除する「Pandas」

本記事では、表題の雛形コードを載せました。 # 指定インデックス番号の行を残す場合 target_list = [1, 5, 503, 506] df1 = df.loc[target_list, :]# 指定インデックス番号の行を削除する場合df2 = df.drop(target_list) 例えば、下図のような506行のデータ…

Python 説明変数間が従属関係にある制約条件下での多目的最適化「PyCaret×Optuna」

本記事では、説明変数間が従属関係にある制約条件下での多目的最適化を実施して、下図のようなパレート解を取得する雛形コードを載せました。 下図はその実施例です。説明変数3つ「PTRATIO」「INDUS」「DIS」の和が固定値25という制約下で乱数により、多目的…

Python 帯グラフを作成する

本記事では、下図のような帯グラフ(積み重ね棒グラフ)の雛形コードを載せました。 次のサイトを参考にさせて頂き、前処理の追加や私好みに多少編集しています。matplotlib - 積み上げ棒グラフを作成する方法 - pystyle 使用したデータは下図のようなcsvフ…

Python カテゴリ別に色を指定して、散布図を作成する「JupyterLab向け」

'21/12/22更新:カテゴリの色を指定するコードを追記しました。 上図のデータ元は、下図のように横軸がA列, 縦軸がE列、カテゴリ変数はF列です。 ■本プログラム #!/usr/bin/env python # coding: utf-8 # In[1]: import pandas as pd file_path = 'test_data…

Python Pandasの列に対して桁数を指定して四捨五入する「decimal」

'21/06/12更新:整数の場合に加えて、小数点の場合の例も追記しました。 本記事では、pandas(パンダス)データフレーム形式の列データに対して、四捨五入する雛形コードを載せました。下図はその例で、列名「RM」と「PRICE」は整数に、それ以外の列は小数点…

Python タートルグラフィックスで絵を描く「turtle」

'21/06/13更新:クロソイド曲線の雛形コードを中程に追記しました。 本記事では、下図のように亀で絵を描く雛形コードを載せました。下図中の左側から、丸, 三角, 四角, 花柄模様はネット検索で出てくる基本事項です。一方、下図右側の赤線のsin波は、自作関…

Python 「JupyterLab」セル中の文字列を複数置換する手順

Ctrl+Fを押すと、下図のように検索画面が表示されます。この左側にある「▶」をクリックします。 すると、下図のように置換画面が出現します。 以上 <広告> // リンク

Python クラス数を指定して分類するクラスター分析「k-means」

'22/07/02更新:クラスタリング前の散布図を冒頭に追加 本記事では、クラス数を指定してクラスター分析(クラスタリング)する雛形コードを載せました。分析結果は、グラフ化してcsvファイルに出力する仕様です。 例題データには、siciki-learnにあるワイン…

Python カテゴリ別にプロットする散布図を作成する(カテゴリデータが行方向に塊りである場合)「plt.scatter」

'21/05/26更新:コードの可読性を多少良くしました。 本記事では、例えば、下図のように「t=1, t=2, t=3」をカテゴリとした散布図を作成する雛形コードを載せました。 本プログラムの仕様について説明します。下図のようなcsvファイルがあって、Time_1, Time…