How to add new column with min and max function in Pyspark and group by the data?(如何在Pyspark中添加带有MIN和MAX函数的新列,并按数据分组?)
本文介绍了如何在Pyspark中添加带有MIN和MAX函数的新列,并按数据分组?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
PySpark Dataframe:adbel DF
向数据框添加新列:
from pyspark.sql.window import Window
from pyspark.sql import functions as f
adobeDF_new = adobeDF.withColumn('start_date', f.col('Date')).withColumn('end_date', f.col('Date'))
结果:
我正在尝试弄清楚如何将最小(日期)值保存在Start_Date中,将最大(日期)值保存在End_Date中,并按post_evar10和Type对最终数据帧进行分组。
我尝试过的内容:下面的代码可以工作,但想看看是否有更好的方法来这样做,并将数据限制在从START_DATE起60天
from pyspark.sql.window import Window
from pyspark.sql import functions as f
adobe_window = Window.partitionBy('post_evar10','Type').orderBy('Date')
adobeDF_new = adobeDF.withColumn('start_date', min(f.col('Date')).over(adobe_window)).withColumn('end_date', max(f.col('Date')).over(adobe_window))
推荐答案
以下内容如何?
adobeDF.groupBy("post_evar10").agg(
f.min("start_date").alias("min_start"),
f.max("end_date").alias("max_end")
)
这篇关于如何在Pyspark中添加带有MIN和MAX函数的新列,并按数据分组?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:如何在Pyspark中添加带有MIN和MAX函数的新列,并按数据分组?
基础教程推荐
猜你喜欢
- 使用Python匹配Stata加权xtil命令的确定方法? 2022-01-01
- 哪些 Python 包提供独立的事件系统? 2022-01-01
- 合并具有多索引的两个数据帧 2022-01-01
- 如何在 Python 中检测文件是否为二进制(非文本)文 2022-01-01
- 将 YAML 文件转换为 python dict 2022-01-01
- 如何在Python中绘制多元函数? 2022-01-01
- 症状类型错误:无法确定关系的真值 2022-01-01
- 使 Python 脚本在 Windows 上运行而不指定“.py";延期 2022-01-01
- 使用 Google App Engine (Python) 将文件上传到 Google Cloud Storage 2022-01-01
- Python 的 List 是如何实现的? 2022-01-01