本文简要介绍
pyspark.sql.Column.dropFields
的用法。用法:
Column.dropFields(*fieldNames)
按名称删除
StructType
中的字段的表达式。如果架构不包含字段名称,则这是 no-op。版本 3.1.0 中的新函数。
例子:
>>> from pyspark.sql import Row >>> from pyspark.sql.functions import col, lit >>> df = spark.createDataFrame([ ... Row(a=Row(b=1, c=2, d=3, e=Row(f=4, g=5, h=6)))]) >>> df.withColumn('a', df['a'].dropFields('b')).show() +-----------------+ | a| +-----------------+ |{2, 3, {4, 5, 6}}| +-----------------+
>>> df.withColumn('a', df['a'].dropFields('b', 'c')).show() +--------------+ | a| +--------------+ |{3, {4, 5, 6}}| +--------------+
此方法支持直接删除多个嵌套字段,例如
>>> df.withColumn("a", col("a").dropFields("e.g", "e.h")).show() +--------------+ | a| +--------------+ |{1, 2, 3, {4}}| +--------------+
但是,如果您要添加/替换多个嵌套字段,最好在添加/替换多个字段之前提取嵌套结构,例如
>>> df.select(col("a").withField( ... "e", col("a.e").dropFields("g", "h")).alias("a") ... ).show() +--------------+ | a| +--------------+ |{1, 2, 3, {4}}| +--------------+
相关用法
- Python pyspark Column.desc_nulls_first用法及代码示例
- Python pyspark Column.desc_nulls_last用法及代码示例
- Python pyspark Column.desc用法及代码示例
- Python pyspark Column.withField用法及代码示例
- Python pyspark Column.eqNullSafe用法及代码示例
- Python pyspark Column.rlike用法及代码示例
- Python pyspark Column.substr用法及代码示例
- Python pyspark Column.when用法及代码示例
- Python pyspark Column.isNotNull用法及代码示例
- Python pyspark Column.bitwiseAND用法及代码示例
- Python pyspark Column.isNull用法及代码示例
- Python pyspark Column.between用法及代码示例
- Python pyspark Column.contains用法及代码示例
- Python pyspark Column.cast用法及代码示例
- Python pyspark Column.like用法及代码示例
- Python pyspark Column.endswith用法及代码示例
- Python pyspark Column.asc_nulls_first用法及代码示例
- Python pyspark Column.getField用法及代码示例
- Python pyspark Column.isin用法及代码示例
- Python pyspark Column.bitwiseOR用法及代码示例
- Python pyspark Column.startswith用法及代码示例
- Python pyspark Column.bitwiseXOR用法及代码示例
- Python pyspark Column.asc_nulls_last用法及代码示例
- Python pyspark Column.otherwise用法及代码示例
- Python pyspark Column.getItem用法及代码示例
注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.sql.Column.dropFields。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。