我需要通过按“ID”分组来选择数据框中的所有列。但是当我这样做时,我只得到了ID和“value”。我需要所有列。
a=df.groupby(df['id']).agg({"date": "max"}
a.show()
这个查询只选择'id'和'date'列,实际上还有其他列。如何选择日期最大的所有列。
我需要通过按“ID”分组来选择数据框中的所有列。但是当我这样做时,我只得到了ID和“value”。我需要所有列。
a=df.groupby(df['id']).agg({"date": "max"}
a.show()
这个查询只选择'id'和'date'列,实际上还有其他列。如何选择日期最大的所有列。
a=df.groupby(df['id']).agg({"date": "max"}
df = df.join(
a,
on = "id",
how = "inner"
)
df.show()
from pyspark.sql import Window
import pyspark.sql.functions as F
window = Window.partitionBy("id")
a = df.withColumn(
"max",
(F.max(F.col("date")).over(window))
)
a.show()