Вы можете использовать оператор isin
после взятия подстроки столбца PAT
:
df_data = spark.createDataFrame([['123221'], ['2321'], ['123221'], ['20322']], ['PAT'])
df_data.show()
+------+
| PAT|
+------+
|123221|
| 2321|
|123221|
| 20322|
+------+
df_data.where(df_data.PAT.substr(1,3).isin(['123', '203'])).show()
+------+
| PAT|
+------+
|123221|
|123221|
| 20322|
+------+
Чтобы удалить дубликаты:
df_data.where(df_data.PAT.substr(1,3).isin(['123', '203'])).dropDuplicates().show()
+------+
| PAT|
+------+
| 20322|
|123221|
+------+