当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python PySpark DataFrame colRegex方法用法及代码示例


PySpark DataFrame 的 colRegex(~) 方法返回一个 Column 对象,其标签与指定的正则表达式匹配。此方法还允许选择多个列。

参数

1. colName | string

匹配列标签的正则表达式。

返回值

PySpark 专栏。

例子

在PySpark中使用正则表达式选择列

考虑以下PySpark DataFrame:

df = spark.createDataFrame([("Alex", 20), ("Bob", 30), ("Cathy", 40)], ["col1", "col2"])
df.show()



+-----+----+
| col1|col2|
+-----+----+
| Alex|  20|
|  Bob|  30|
|Cathy|  40|
+-----+----+

要使用正则表达式选择列,请使用colRegex(~)方法:

df.select(df.colRegex("`col[123]`")).show()



+-----+----+
| col1|col2|
+-----+----+
| Alex|  20|
|  Bob|  30|
|Cathy|  40|
+-----+----+

在此,请注意以下事项:

  • 我们使用反引号 ` 包装列标签 - 这是必需的,否则 PySpark 将引发错误。

  • 正则表达式 col[123] 与带有标签 col1col2col3 的列匹配。

  • select(~) 方法用于将Column 对象转换为PySpark DataFrame。

获取与正则表达式匹配的列标签作为 PySpark 中的字符串列表

要将列标签作为字符串列表而不是 PySpark Column 对象获取:

df.select(df.colRegex("`col[123]`")).columns



['col1', 'col2']

在这里,我们使用 select(~) 返回的 PySpark DataFrame 的 columns 属性。

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 PySpark DataFrame | colRegex method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。