我有以下DataFrame
userId food ate
10 apple 2
10 banana 1
25 apple 0
30 pear 3
我想把它转换成这个
userId apple banana pear
10 2 1 Nan
25 0 Nan Nan
30 Nan Nan 30
我知道如果我使用pandas
我可以这样做
new_df["apple"] = df.apply(lambda x: x["ate"] if x["food"] == "apple" else np.nan, axis=1)
但这不会有效率,特别是如果我需要这样做,比方说,几千种不同类型的食物。
您知道更高效的版本(使用pandas还是pyspark)?