我正在尝试使用pyspark筛选一个表,其中一列的所有值的前两个字符都以两个大写字母开头,例如“utrecht”、“new york”等
这是我尝试过的,但完全失败了:
df_filtered=df.filter(F.col("column_name").isUpper())
我也试过:
df_filtered=df.filter(str.isupper,"affiliation_city")
导致以下错误:
filter()接受2个位置参数,但给出了3个
我是pyspark的新手,所以任何建议都将不胜感激。
提前谢谢!
1条答案
按热度按时间fumotvh31#
您可以使用下面的substr函数和upper函数来查看substr是否为upper
你带着前两个字母
substr
如果此子字符串upper(F.col("test").substr(1, 2))
并将其过滤为如果您想要更大的灵活性(但这不是最好的方法),可以使用python isupper()函数创建一个返回true/false的自定义项