问题描述
在 scala 中,我可以使用 get(#) 或 getas[type](#) 从数据帧中获取值.在 pyspark 中应该怎么做?
in scala i can do get(#) or getas[type](#) to get values out of a dataframe. how should i do it in pyspark?
我有一个两列 dataframe:item(string) 和 salesnum(integers).我做了一个 groupby 和 mean 来获得这些数字的平均值,如下所示:
i have a two columns dataframe: item(string) and salesnum(integers). i do a groupby and mean to get a mean of those numbers like this:
saledf.groupby("salesnum").mean()).collect()
它有效.现在我在一个数据框中有了一个平均值.
and it works. now i have the mean in a dataframe with one value.
如何从数据框中获取该值以获取浮点数的平均值?
how can i get that value out of the dataframe to get the mean as a float number?
推荐答案
collect() 将结果作为 python 列表返回.要从列表中取出值,您只需要像这样获取第一个元素:
collect() returns your results as a python list. to get the value out of the list you just need to take the first element like this:
saledf.groupby("salesnum").mean()).collect()[0]