使用 spark databricks dataframe 过滤列
filter a column using spark databricks dataframe
我有一个数据框,我有一个名为 url
的列,我想要的是 select 所有不包含单词 "www.ebay.com"
的 url ,我试过这个:
%python
display(flutten_df.printSchema())
display(flutten_df[flutten_df['url'].str.contains("www.ebay.com")])
它给我这个错误:
AnalysisException: Can't extract value from url#75009: need struct
type but got string;
架构是:
root
|-- web: string (nullable = true)
|-- url: string (nullable = true)
请问如何解决这个问题?
您正在尝试在 spark DataFrame 上使用 pandas 语法。
在 Pyspark 中,flutten_df['url'].str
表示 从列 url
获取结构字段 str
。因此,您收到错误消息说它无法从不是结构的列中提取值。
使用 filter
和 rlike
代替:
display(flutten_df.filter(~flutten_df['url'].rlike("www.ebay.com")))
我有一个数据框,我有一个名为 url
的列,我想要的是 select 所有不包含单词 "www.ebay.com"
的 url ,我试过这个:
%python
display(flutten_df.printSchema())
display(flutten_df[flutten_df['url'].str.contains("www.ebay.com")])
它给我这个错误:
AnalysisException: Can't extract value from url#75009: need struct type but got string;
架构是:
root
|-- web: string (nullable = true)
|-- url: string (nullable = true)
请问如何解决这个问题?
您正在尝试在 spark DataFrame 上使用 pandas 语法。
在 Pyspark 中,flutten_df['url'].str
表示 从列 url
获取结构字段 str
。因此,您收到错误消息说它无法从不是结构的列中提取值。
使用 filter
和 rlike
代替:
display(flutten_df.filter(~flutten_df['url'].rlike("www.ebay.com")))