Pandasのvalue_counts()で値の名前と出現回数(カウント)を抽出する方法
Pandasのvalue_counts()メソッドを使うと、SeriesやDataFrameの各列に含まれる一意な値とその出現回数(カウント)を簡単に抽出できます。戻り値は、出現回数が多い順にソートされたSeriesとして返されます。
サンプルDataFrameの作成
まず、4つの列を持つDataFrameを作成しましょう。
import pandas as pd
dataFrame = pd.DataFrame({
"Car": ['BMW', 'Mustang', 'Tesla', 'Mustang', 'Mercedes', 'Tesla', 'Audi'],
"Cubic Capacity": [2000, 1800, 1500, 2500, 2200, 3000, 2000],
"Reg Price": [7000, 1500, 5000, 8000, 9000, 6000, 1500],
"Units Sold": [200, 120, 150, 120, 210, 250, 220]
})特定の列から値の名前とカウントを取得する
例えば、「Car」列に含まれる値の名前と出現回数を取得するには、次のように記述します。
res = dataFrame['Car'].value_counts()
同様に、「Units Sold」列の場合は以下のようになります。
res = dataFrame['Units Sold'].value_counts()
完全なコード例
以下に、ここまでの処理をまとめた完全なコードを示します。
import pandas as pd
# DataFrameの作成
dataFrame = pd.DataFrame({
"Car": ['BMW', 'Mustang', 'Tesla', 'Mustang', 'Mercedes', 'Tesla', 'Audi'],
"Cubic Capacity": [2000, 1800, 1500, 2500, 2200, 3000, 2000],
"Reg Price": [7000, 1500, 5000, 8000, 9000, 6000, 1500],
"Units Sold": [200, 120, 150, 120, 210, 250, 220]
})
print("DataFrame ...\n", dataFrame)
# Car列の値の名前とカウントを表示
res = dataFrame['Car'].value_counts()
print("\nCar列の値の名前と出現回数:\n", res)
# Units Sold列の値の名前とカウントを表示
res = dataFrame['Units Sold'].value_counts()
print("\nUnits Sold列の値の名前と出現回数:\n", res)実行結果
上記のコードを実行すると、以下のような出力が得られます。
DataFrame ...
Car Cubic Capacity Reg Price Units Sold
0 BMW 2000 7000 200
1 Mustang 1800 1500 120
2 Tesla 1500 5000 150
3 Mustang 2500 8000 120
4 Mercedes 2200 9000 210
5 Tesla 3000 6000 250
6 Audi 2000 1500 220
Car列の値の名前と出現回数:
Mustang 2
Tesla 2
Audi 1
BMW 1
Mercedes 1
Name: Car, dtype: int64
Units Sold列の値の名前と出現回数:
120 2
150 1
220 1
210 1
250 1
200 1
Name: Units Sold, dtype: int64このように、value_counts()を使えば、指定した列内の各値が何回出現したかを一目で確認できます。カテゴリカルデータの分布把握や、重複データの調査などに非常に便利なメソッドです。
-
【Python】Pandas DataFrameからnull(欠損値)行を削除する方法|dropna()の使い方
PandasのDataFrameからnull(NaN)行を削除するには、dropna()メソッドを使用します。この記事では、NaNを含むCSVファイルを読み込み、dropna()で欠損値を含む行を取り除くまでの手順を、サンプルコードと実行結果とともにわかりやすく解説します。前提:NaNを含むCSVファイル今回の例では、一部にNaN(null値)が含まれる以下のようなCSVファイル(CarRecords.csv)を使用します。手順1:read_csv()でCSVファイルを読み込むまずpandasをインポートし、read_csv()を使ってCSVファイルを読み込みます。ここではデスクトップ上に保存
-
【Python】datetimeオブジェクトから月と日だけを抽出して表示する方法
Pythonでdatetimeオブジェクト(日時データ)から「月」と「日」だけを抽出してグラフに表示したい場合、matplotlibが提供するDateFormatter()クラスを利用すると簡単に実現できます。この記事では、実際のコード例とともに具体的な手順をわかりやすく解説します。実装の手順図(figure)のサイズを設定し、サブプロット間および周囲のパディング(余白)を調整します。2次元のサイズ変更可能な表形式データを持つデータフレームdfを作成します。figureとサブプロットの一式を作成します。plot()メソッドを使ってデータフレームをプロットします。X軸のフォーマッターを設定し、月