メインコンテンツまでスキップ

アサート_true

入力列がtrueの場合はnull返します。それ以外の場合は、指定されたエラー メッセージとともに例外をスローします。

構文

Python
from pyspark.sql import functions as sf

sf.assert_true(col, errMsg=None)

パラメーター

パラメーター

Type

説明

col

pyspark.sql.Column または文字列

テストする入力列を表す列名または列。

errMsg

pyspark.sql.Column または文字列(オプション)

エラー メッセージを含む Python 文字列リテラルまたは列。

戻り値

pyspark.sql.Column: 入力列がtrueの場合はnullそれ以外の場合は指定されたメッセージでエラーをスローします。

例1 : 真条件をアサートする

Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(0, 1)], ['a', 'b'])
df.select('*', sf.assert_true(df.a < df.b)).show()
Output
+---+---+--------------------------------------------+
| a| b|assert_true((a < b), '(a < b)' is not true!)|
+---+---+--------------------------------------------+
| 0| 1| NULL|
+---+---+--------------------------------------------+

例2 : 列エラーメッセージによるアサート

Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(0, 1)], ['a', 'b'])
df.select('*', sf.assert_true(df.a < df.b, df.a)).show()
Output
+---+---+-----------------------+
| a| b|assert_true((a < b), a)|
+---+---+-----------------------+
| 0| 1| NULL|
+---+---+-----------------------+

例3 : カスタムエラーメッセージを使用したアサート

Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(0, 1)], ['a', 'b'])
df.select('*', sf.assert_true(df.a < df.b, 'error')).show()
Output
+---+---+---------------------------+
| a| b|assert_true((a < b), error)|
+---+---+---------------------------+
| 0| 1| NULL|
+---+---+---------------------------+