• home
  • about
  • 全ての投稿
  • ソフトウェア・ハードウェアの設定のまとめ
  • 分析関連のまとめ
  • ヘルスケア関連のまとめ
  • 生涯学習関連のまとめ

pandas query

date: 2021-01-03 excerpt: pandas queryのチートシート

tag: pythonpandasチートシート


pandas queryのチートシート

概要

  • 複雑なフィルタを簡単に記す機能
  • 文字列を引数にとってSQL likeに処理することができる

各機能の説明

特定の値でフィルタする

df.query('column > 10.0')

特定の値でフィルタした結果でdfを置き換える

df.query('column > 10.0', inplace=True)

外部の変数を参照してフィルタする

val = 10.0
df.query('column > @val')

listの値が含まれているものをフィルタする

lst = [1, 2, 3]
df.query('column in @lst')

NaNでない値でフィルタ

df.query('column.notna()')

NaNである値でフィルタ

df.query('column.isna()')

nullでない値でフィルタ

df.query('column.notnull()')

nullである値でフィルタ

df.query('column.isnull()')

文字列の正規表現でフィルタ

df.query('column.str.contains("something", regex=True)')

スペースで区切られたカラム名の操作

df = pd.DataFrame({"a b c": [1, 2, 3], "value": [4, 5, 6]})
df.query('`a b c` >= 2')

"""
|    |   a b c |   value |
|---:|--------:|--------:|
|  1 |       2 |       5 |
|  2 |       3 |       6 |
"""


pythonpandasチートシート Share Tweet