Я новичок в PySpark, и мне было интересно, как бы вы использовали там цепочку методов. В pandas я бы использовал assign с lambda, например,
df = pd.DataFrame({'number':[1,2,3],'date':['31-dec-19','02-jan-18','14-mar-20']})
df = (df.assign(number_plus_one = lambda x: x.number + 1)
.assign(date = lambda x: pd.to_datetime(x.date))
.loc[lambda x: x.number_plus_one.isin([2,3])]
.drop(columns=['number','number_plus_one'])
)
Как бы вы написали тот же код в PySpark без преобразования его в pandas фрейм данных? Я думаю, вы могли бы использовать filter, withColumn и drop, но как именно вы бы это сделали с цепочкой методов?