我有一个数据帧 df
在 PySpark
,如下图所示——
+-----+--------------------+-------+
| ID| customers|country|
+-----+--------------------+-------+
|56 |xyz Limited |U.K. |
|66 |ABC Limited |U.K. |
|16 |Sons & Sons |U.K. |
|51 |TÜV GmbH |Germany|
|23 |Mueller GmbH |Germany|
|97 |Schneider AG |Germany|
|69 |Sahm UG |Austria|
+-----+--------------------+-------+
我只想保留那些
ID
的行从 5 或 6 开始。所以,我希望我的最终数据框看起来像这样 -+-----+--------------------+-------+
| ID| customers|country|
+-----+--------------------+-------+
|56 |xyz Limited |U.K. |
|66 |ABC Limited |U.K. |
|51 |TÜV GmbH |Germany|
|69 |Sahm UG |Austria|
+-----+--------------------+-------+
这可以通过多种方式实现,这不是问题。但是,我有兴趣了解如何使用
LIKE
来做到这一点。陈述。我是否只对那些
ID
的行感兴趣?从 5 开始,它可以像这样轻松完成 -df=df.where("ID like ('5%')")
我的问题:如何添加第二个语句,如
"ID like ('6%')"
与 OR - |
内部 bool 值 where
条款?我想做如下所示的操作,但此代码出现错误。因此,简而言之,如何使用 LIKE and .where
使用多个 bool 语句这里 -df=df.where("(ID like ('5%')) | (ID like ('6%'))")
最佳答案
你可以试试df = df.where('ID like "5%" or ID like "6%"')
关于dataframe - 在 PySpark 中对多个单词使用 LIKE 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52889682/