回合结果总计 table 个结果 (pyspark)
round results in aggregate table results (pyspark)
你好,我如何舍入这段代码输出的 table 的内容。
from pyspark.sql.functions import *
exprs = {x: "sum" for x in data2.columns[:4]}
data2.groupBy("Species").agg(exprs).show()
我试过了
round(data2.groupBy("Species").agg(exprs),2).show() #not ok
data2.groupBy("Species").agg(exprs).show().round(2) # not ok
round 仅适用于一列。所以你必须为每一列调用它,例如
agg_cols = data2.columns[:4]
exprs = [sum(col(x)).alias(x) for x in agg_cols]
aggregated_df = data2.groupBy("Species").agg(*exprs)
aggregated_df.select(col("Species"), *[round(c, 2) for c in agg_cols]).show()
你好,我如何舍入这段代码输出的 table 的内容。
from pyspark.sql.functions import *
exprs = {x: "sum" for x in data2.columns[:4]}
data2.groupBy("Species").agg(exprs).show()
round(data2.groupBy("Species").agg(exprs),2).show() #not ok
data2.groupBy("Species").agg(exprs).show().round(2) # not ok
round 仅适用于一列。所以你必须为每一列调用它,例如
agg_cols = data2.columns[:4]
exprs = [sum(col(x)).alias(x) for x in agg_cols]
aggregated_df = data2.groupBy("Species").agg(*exprs)
aggregated_df.select(col("Species"), *[round(c, 2) for c in agg_cols]).show()