【python】pandasにて最大値の2番目や最大値を計算する方法【2番目に大きい】


↑公開しているnote(電子書籍)の内容のまとめています。
最新note:技術サイトで月1万稼ぐ方法(10記事分上位表示できるまでのコンサル付)

Pandas(Python)にて最大値の2番目や最大値を計算する方法【2番目に大きい数など上からn番目の値を抽出】

 

大量の科学的データを解析する際には、pythonを初めとしたデータ加工に長けたプログラミングを理解しておくと便利です。

 

例えば、python(jupyternotebook使用)のpandas機能にてある列の2番目に大きい数値を出力したり、最大値を求めるにはどのように処理すればいいのか理解していますか。

 

ここでは、これらpandasにて最大値に関する数値を計算する方法について解説していきます。

 

・pandas(Python)にて最大値を計算する方法【max関数】

 

・pandas(Python)にて2番目に大きい数値を求める方法【上からn番目の数を抽出】

 

というテーマで解説していきます。

 

 

pandas(Python)にて最大値を計算する方法【max関数】

 

それでは、実際のデータ(以下架空のもの)を使用して、pythonのpandasにて特定の列の数値の最大値を求める方法について確認していきます。

 

 

このa列において、最大値を出力させるにはmax関数を使うといいです。コードは以下の通りであす。

 

df.max()

出力結果は以下のようになります。

 

 

今回のデータの例では、14が最大値と求める事ができました。なお、列を指定しない場合はすべての列ごとの最大値が出力されます。

 

 

pandas(Python)にて2番目に大きい数値を求める方法【上からn番目の数を抽出】

 

今度は最大値の2番目など上からn番目に大きい数値を抽出する方法について紹介していきます。こちらではmax関数は使いません。

 

流れとしてはまず特例の列を指定し、降順(数値の大きい順)に並び替え、その上位二つを抽出することで最大値と最大値の2番目を計算することができます。

 

具体的には、

 

・df.sort_values("指定列",ascending=Falsse)で降順に並び替え
・df.head(数値)で数値分のデータを抽出

 

していきます。

 

ソースコードは以下の通りです。

 

import os
os.chdir("C:\\sample\\")
import pandas as pd
df = pd.read_csv("sample4.csv",encoding="SHIFT_JIS")
dfs = df.sort_values("a",ascending=False)
dfs.head(2)

すると、以下のようpandasにて最大値の2番目を計算できました。

 

 

なお、最大値の2番目だけではなく、n番目であってもhead関数内の数値をnと変更するだけで対応できることも覚えておくといいです。

 

 

関連記事

 

excelにて最大値の2番目を計算する方法

HOME プロフィール お問い合わせ