为了账号安全,请及时绑定邮箱和手机立即绑定

如何从 python 中的 Spark 数据帧访问特定列?

如何从 python 中的 Spark 数据帧访问特定列?

幕布斯6054654 2023-05-16 14:26:03
我的数据框看起来像这样------+-------+                                                                |cat_id|counter|+------+-------+|    12|  61060||     1| 542118||    13| 164700||     3| 406622||     5|  54902||    10| 118281||    11|  13658||    14|  72229||     2| 131206|+------+-------+获取上述数据框的查询是: grouped_data = dataframe.groupBy("cat_id").agg(count("*").alias("counter"))现在我需要读取不同 cat_id 的值以将其保存在另一个数据库中。我完成它的方法是在我的 id 上使用 for 循环for cat_id in cat_ids_map:     statsCount = grouped_data.select("counter").filter("cat_id = " + cat_id).collect()[0].counter但我认为可以有更好的方法来读取计数器而无需 for 循环。任何的意见都将会有帮助!!!
查看完整描述

1 回答

?
慕村9548890

TA贡献1884条经验 获得超4个赞

如果要遍历整个数据框,通常使用.foreach函数。

所以你会这样做:

grouped_data.foreach(lambda x: f(x))

其中f是您的函数,它将对数据框中的每个元素执行您想要的任何操作


查看完整回答
反对 回复 2023-05-16
  • 1 回答
  • 0 关注
  • 134 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信