pyspark.sql.functions.to_varchar ¶
-
to_varchar( col : ColumnOrName , format : ColumnOrName ) → pyspark.sql.column.Column [source] ¶ -
将 col 转换为基于 format 的字符串。 如果转换失败,则抛出异常。格式可以包含以下字符,不区分大小写: ‘0’ 或 ‘9’:指定期望的数字,范围在 0 到 9 之间。格式字符串中的 0 或 9 序列与输入值中的数字序列匹配,生成一个与格式字符串中对应序列长度相同的结果字符串。 如果 0/9 序列包含的数字比十进制值的匹配部分更多,且在小数点前以 0 开头,则结果字符串用零左填充。否则,用空格填充。 ‘.’ 或 ‘D’:指定小数点的位置(可选,只允许一次)。 ‘,’ 或 ‘G’:指定分组(千位)分隔符(,)的位置。 每个分组分隔符的左侧和右侧必须有一个 0 或 9。 ‘$’:指定 $ 货币符号的位置。此字符只能指定一次。 ‘S’ 或 ‘MI’:指定 ‘-’ 或 ‘+’ 符号的位置(可选,只允许在格式字符串的开始或结束一次)。注意,‘S’ 为正值打印 ‘+’,但 ‘MI’ 打印一个空格。 ‘PR’:仅允许在格式字符串的末尾;如果输入值为负,则指定结果字符串将被尖括号包围。
在版本 3.5.0 中新增。
示例
>>> df = spark.createDataFrame([(78.12,)], ["e"]) >>> df.select(to_varchar(df.e, lit("$99.99")).alias('r')).collect() [Row(r='$78.12')]