返回 null 输入列是否为 true;否则将引发带有提供的错误消息的异常。
Syntax
from pyspark.sql import functions as sf
sf.assert_true(col, errMsg=None)
参数
| 参数 | 类型 | Description |
|---|---|---|
col |
pyspark.sql.Column 或 str |
表示要测试的输入列的列名或列。 |
errMsg |
pyspark.sql.Column 或 str,可选 |
包含错误消息的 Python 字符串文本或列。 |
退货
例子
示例 1:断言真实条件
from pyspark.sql import functions as sf
df = spark.createDataFrame([(0, 1)], ['a', 'b'])
df.select('*', sf.assert_true(df.a < df.b)).show()
+---+---+--------------------------------------------+
| a| b|assert_true((a < b), '(a < b)' is not true!)|
+---+---+--------------------------------------------+
| 0| 1| NULL|
+---+---+--------------------------------------------+
示例 2:带有列错误消息的断言
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()
+---+---+-----------------------+
| a| b|assert_true((a < b), a)|
+---+---+-----------------------+
| 0| 1| NULL|
+---+---+-----------------------+
示例 3:断言并显示自定义错误消息
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()
+---+---+---------------------------+
| a| b|assert_true((a < b), error)|
+---+---+---------------------------+
| 0| 1| NULL|
+---+---+---------------------------+