加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Scala Spark Dataframe – 计算数组列中每行的字符串数

发布时间:2020-12-16 18:35:20 所属栏目:安全 来源:网络整理
导读:我是 Scala编程的新手,这是我的问题:如何计算每行的字符串数量?我的Dataframe由一列Array [String]类型组成. friendsDF: org.apache.spark.sql.DataFrame = [friends: arraystring] 解决方法 您可以使用 size 功能: val df = Seq((Array("a","b","c"),2),
我是 Scala编程的新手,这是我的问题:如何计算每行的字符串数量?我的Dataframe由一列Array [String]类型组成.

friendsDF: org.apache.spark.sql.DataFrame = [friends: array<string>]

解决方法

您可以使用 size功能:

val df = Seq((Array("a","b","c"),2),(Array("a"),4)).toDF("friends","id")
// df: org.apache.spark.sql.DataFrame = [friends: array<string>,id: int]

df.select(size($"friends").as("no_of_friends")).show
+-------------+
|no_of_friends|
+-------------+   
|            3|
|            1|
+-------------+

要添加为新列:

df.withColumn("no_of_friends",size($"friends")).show
+---------+---+-------------+
|  friends| id|no_of_friends|
+---------+---+-------------+
|[a,b,c]|  2|            3|
|      [a]|  4|            1|
+---------+---+-------------+

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读