我有一个数据框,其中有' prod_key',' prod_name','销售''卷'。我想得到df的所有描述性统计数据。
groupby_cols = ['prod_key','prod_name']
funs = [F.mean, F.min, F.max,F.count]
aggregate_cols = [ 'Sales','Volume' ]
exprs = [f(F.col(c)) for f in funs for c in aggregate_cols]
df_description = df.groupBy(*groupby_cols).agg(*exprs)
我在max函数results中得到了null值.Min函数工作正常。这有什么不对吗?感谢。
答案 0 :(得分:0)
df = df.withColumn("Sales",df["Sales"].cast("float"))\
.withColumn("Volume",df["Volume"].cast("float"))
df.Sales,df.Volume作为String读入可能是因为有空值。将数据类型从字符串更改为float后,它可以正常工作。