注: 以下の翻訳の正確性は検証されていません。AIPを利用して英語版の原文から機械的に翻訳されたものです。
これにより、論理演算を利用してフィルター処理ロジックを提供することができます:
&
:And
Copied!1
df = df.filter(condition_a & condition_b)
|
:Or
Copied!1
df = df.filter(condition_a | condition_b)
^
:排他的論理和
Copied!1
df = df.filter(condition_a ^ condition_b)
~
:否定
Copied!1
df = df.filter(~condition_a)
Python の for ループを使って条件式を生成することができますが、不要なエラーを避けるために、ブール代数 ↗ を復習しておくことをお勧めします。以下に、これをどのように活用できるかの例を示します:
年齢 | 名前 |
---|---|
2 | "Alice" |
SQL の LIKE ワイルドカード:
%
: 0 文字以上を表す_
: 1 文字を表す例 ( w3schools ↗ から):
LIKE 演算子 | 説明 |
---|---|
行.like('a%') | "a"で始まる任意の値を検索する |
行.like('%a') | "a"で終わる任意の値を検索する |
行.like('%or%') | 任意の位置に"or"が含まれる値を検索する |
行.like('_r%') | 2番目の位置に"r"が含まれる値を検索する |
行.like('a_%_%') | "a"で始まり、3文字以上の任意の値を検索する |
行.like('a%o') | "a"で始まり、"o"で終わる任意の値を検索する |
行.rlike(regex)
リテラル文字列または行によって提供される正規表現マッチに基づくブール値の行式を返します:
name | phone |
---|---|
"Alice" | "412-512-1234" |
"John" | "(555) 123-5123" |
"Jane" | "4121234444" |
適切に活用すれば、正規表現は非常に強力です。以下は、正規表現を学ぶためのリソースです:
Column.startswith(string)
行の文字列値が、パラメーターで指定された文字列(リテラルまたは他の行)で始まるかどうかを示すブール型の行式を返します。