\

PythonのPandasライブラリは、データ分析において非常に強力なツールです。特に、DataFrameオブジェクトのqueryメソッドは、データフレームから特定の条件に一致するデータを抽出するのに便利です。

以下に、queryメソッドの基本的な使用方法を示します。

import pandas as pd
import numpy as np

# データフレームの準備
df = pd.DataFrame({
    'a': range(1, 6),
    'b': range(10, 0, -2),
    'c c' : [1, 3, 5, 7, 9],
    'd' : [2, np.nan, np.inf, None, 10],
    'e' : ['a', 'b', 'c', 'd', 'e'],
    'f' : [False, True, True, False, True]
})

# a列の値が3である行を抽出
df.query('a == 3')

# a列の値が3でない行を抽出
df.query('a != 3')

# a列の値が3より大きい行を抽出
df.query('a > 3')

# a列の値がb列の値より大きい行を抽出
df.query('a > b')

# e列の値が文字列"a"である行を抽出
df.query('e == "a"')

# a列の値が2より大きいかつb列の値が3より小さい行を抽出
df.query('a > 2 and b < 3')

# a列の値が2より大きいあるいはb列の値が3より小さい行を抽出
df.query('a > 2 or b < 3')

# a列の値が2以上4以下の範囲にある行を抽出
df.query('2 <= a <= 4')

# d列の値がinfである行を抽出
df.query('d == inf')

# d列の値が欠損である行を抽出
df.query('d != d')

# f列の値がTrueの行を抽出
df.query('f == True')

# a列の値が(1, 2, 3)のいずれかである行を抽出
df.query('a in (1, 2, 3)')

# a列の値が(1, 2, 3)のどれでもない行を抽出
df.query('a not in (1, 2, 3)')

# 条件の値として予め用意した変数を使用することが可能
x = 2
df.query('a == @x')

このように、queryメソッドを使用すると、様々な条件でデータフレームからデータを抽出することができます。これは、データ分析や前処理において非常に便利な機能です。

以上が、PythonとPandasを使用したデータフレームのクエリについての記事です。この情報が皆さんのデータ分析作業に役立つことを願っています。.

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です