【问题标题】:Get Maximum from column with Python in Databricks notebook在 Databricks 笔记本中使用 Python 从列中获取最大值
【发布时间】:2020-09-04 21:22:33
【问题描述】:

我在 Azure 上使用 DataBricks 作为服务。我需要通过 Python 获取一个字段的最大值。我写了下面的代码,但我想知道是否有另一种方法可以在没有循环的情况下获得最大数量。

%python 
SqlMaxValue ="""select  IFNULL(MAX(Id) , 0) AS Max_ID
                FROM {0}.t_xxxx""".format(gvDB_xxxx)
DF_SqlMaxValue = spark.sql(SqlMaxValue)
MaxAttr = ''

for y in DF_SqlMaxValue.collect():    
      MaxAttr = y.Max_ID

【问题讨论】:

    标签: python-3.x databricks azure-databricks


    【解决方案1】:

    在 Databricks 笔记本中使用 Python 从列中获取最大值:

    dataframe.agg({"Column": "max"}).collect()[0]
    

    要获取数据帧的特定列的 MAX 值,可以使用以下方法确定:

    max_value = df.agg({"any-column": "max"}).collect()[0][0]
    

    示例:我有一个球员名单,其中包含上届板球世界杯的得分。从名为 Run 的特定列中获取最大数量

    【讨论】:

      【解决方案2】:

      这段代码只返回一行一列,所以代码可以写成:

      MaxAttr = DF_SqlMaxValue.first()[0]
      

      first 正在返回数据帧的第一行,[0] 获取第一列的值...

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-06-30
        • 2022-11-16
        • 2022-06-23
        • 2021-03-02
        • 2022-11-26
        • 1970-01-01
        • 2020-11-11
        • 2019-04-18
        相关资源
        最近更新 更多