我有一個值串列:
my_list = ["temp1","temp2", "temp10", "temp15"]
我正在嘗試從具有此串列中的值的列“值”中洗掉行。
我試過的代碼:
res = res.filter((res.value == 'temp1') | (res.value == 'temp2') |
(res.value == 'temp10') | (res.value == 'temp15'))
但是有沒有其他方法可以直接在串列中回圈并過濾?(因為我的串列有 30 個元素)。
uj5u.com熱心網友回復:
使用isin:
res = res.filter(res.value.isin(my_list))
例子:
res = spark.createDataFrame([('temp1',), ('x',)], ['value'])
res.show()
# -----
# |value|
# -----
# |temp1|
# | x|
# -----
my_list = ["temp1", "temp2", "temp10", "temp15"]
res = res.filter(res.value.isin(my_list))
res.show()
# -----
# |value|
# -----
# |temp1|
# -----
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/525787.html
