pandas

Python pandasで特定の要素の値を抽出する「at, iat」

本記事では、下図のようなpandasデータフレーム形式の表データに対して、行名、列名、もしくは行番号、列番号を指定して、任意の要素の値を抽出する雛形コードを載せました。 まず、csvのような表データは、次のようにしてpandasデータフレームで読み込みま…

Python 列名指定で棒グラフを描く「pandasのplot.bar()とax.patches」

本記事では、下図のような棒グラフをpandasのデータフレームにて、列名を指定して描く雛形コードを載せました。df.plot.bar()を使います。グラフの値を記入するには、ax.patchesを用います。 上図の元データは、下図のような表データです。これをpandasのDat…

Python 集合棒グラフ(横並び棒グラフ)

'22/09/10更新:棒グラフの値の表示位置設定とグリッド設定について、引数を明記しました(グラフデザインの柔軟性を高めた雛形コードにするため)。 本記事では、下図のような横に並べる棒グラフの雛形コードを載せました。 上記のデータ元は、下図のような…

Python 同じインデックスを抽出して、列データを連結する「Pandasのmerge」

本記事では、2つのデータフレームがあって、共通のindex(行番号,行名)の行データに対して、列データを連結する手順を載せました。もし、重複する列名がある場合はそれらを削除する操作も記載しています。 import pandas as pd # データ1 df1 = pd.read_cs…

Python 「Pandas」指定条件にあてはまる or あてはまらない要素を置換する「mask, whereメソッド」

本記事では、表題を成す雛形コードを2つ載せました。 ▼1. 指定条件にあてはまる要素を置換する場合は、mask()メソッドを使用する import pandas as pd # csvファイルを読み込むdf = pd.read_csv('test_data.csv') df # 特定の列に対して、指定条件にあてはま…

Python 株価データを取得する「pandas_datareader」

本記事では、チャートデータを取得する雛形コードを載せました。ライブラリは「pandas_datareader」を使用します。下図は、ある銘柄の現在から過去5年間の期間を指定して取得した例です。 ■インストールは次の通りです pip install pandas-datareader ■本プ…

Python 特定の列に対する指定条件で、行データ(外れ値)を削除する方法「Pandasのquery」

本記事では表題のことを成す雛形コードを載せました。例題データには、機械学習でお馴染みのボストンデータセットを用いました。入手方法はネット情報から得られます。 ▼元データのグラフ化 #!/usr/bin/env python # coding: utf-8 # In[1]: import pandas a…

Python 積み上げ縦棒グラフを作成する「matplotlib」

'22/09/10更新:グリッド設定の引数を追加(明記)しました。 本記事では、下図のような積み上げ棒グラフを作成する雛形コードを載せました。次のサイトを参考にして、自分好みの設定にしたものです。https://pystyle.info/matplotlib-stacked-bar-chart/ 上…

Python Pandas行方向に周期的にデータを分割して抽出する

本記事では、pandasデータフレームにて、行方向のデータを等分割する雛形コードを載せました。 例えば、下図左はアイリスデータセットで150行あります。これを下図右のように例えば、10行ずつに分割したデータフレームを新たに作成してリストへ格納します。 …

Python 株価のRSIを計算してグラフ化する

本記事では、下図中の下段のように、テクニカル指標のひとつであるRSI(Relative Strength Index,相対力指数)を算出してグラフ化する雛形コードを載せました。 必要なデータは、下図のような時系列チャート情報です。例えば、次のリンク先のような手順で入…

Python 株価の価格帯別出来高をグラフ化する

本記事では、下図のようなグラフを作成する雛形コードを載せました。下図左にはチャート図、右には価格帯別出来高図を表記します。 下図は、例として読み込んだ時系列データです。次のリンク先のような手順で入手できます。Python 楽天証券のマーケットスピ…

Python pandasで日付型(時間型)を操作する

本記事では、pandasで特定列を日付型へ変換し、続けて色々操作する雛形コードを載せました。主に下図のような処理をします。 はじめに、日付型(時間型)へ型変換するのは次の通りです。 df['日付'] = pd.to_datetime(df['日付']) そして、一連の処理は下記…

Python 株のSuperTrendのインジケーターを作成する

本記事では、下図のようなスーパートレンドのIndicatorを作成する雛形コードを載せました。株の売買判定をする指標のひとつであるATR(Average True Range)を計算して、チャートに図示します。 必要なのは、株価に関する時系列データで日付と高値、安値、終値…

Python カテゴリ別に平均や標準偏差などの統計量を算出する「pandasのpivot_table」

本記事では、表題の雛形コードを載せました。下図は、機械学習で有名なタイタニックのデータセットです。これを例に説明します。 例えば、インデックスにPclass(チケットクラス)、列名にSex(性別)にして、平均値や標準偏差を算出して表にしたい場合に下…

Python グラフの凡例に指定したい色を設定する

'21/12/05更新:折れ線図だけの場合の雛形コードも追記しました。 本記事では、凡例(legend)の順番に従って段階的に変化した色を適応したい場合の雛形コードを載せました。 下図の例では、凡例が0, 1, 2の3つあります。これらが水色から紫へと段階的に変化…

Python 2列からなるデータに対して、カテゴリ別にデータを抽出する「pandasのgroupby×apply」

下図のような2列のデータがある。Label列には A, B, Cという3つのカテゴリがあり、それぞれに対応しているNo列の数値をリストで抽出する雛形コードを載せました。 本プログラムを実行すると、下図のようなデータを得ることができます。A, B, Cに属している数…

Python pandasのprint表示設定「set_option」

パンダスデータフレームでプリント表示すると、通常は全部表示されない。例えば、下図の場合には行番号が0~4の5つと、501~505の5つだけが表示されている。 そこで下図のようにデータ行列数を取得して、その数をset_optionで指定することで全部表示できます。…

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 「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 平均±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 帯グラフを作成する

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

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

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