在PySpark中,可以使用groupBy
和count
函数来计算字符串在数据帧列中的出现次数。
首先,需要导入必要的模块和创建一个SparkSession对象:
from pyspark.sql import SparkSession
from pyspark.sql.functions import col
spark = SparkSession.builder.getOrCreate()
接下来,可以读取数据并创建一个数据帧:
data = [("apple",), ("banana",), ("apple",), ("orange",), ("banana",)]
df = spark.createDataFrame(data, ["fruits"])
df.show()
输出结果为:
+------+
|fruits|
+------+
| apple|
|banana|
| apple|
|orange|
|banana|
+------+
然后,可以使用groupBy
和count
函数来计算字符串在数据帧列中的出现次数:
result = df.groupBy("fruits").count().orderBy(col("count").desc())
result.show()
输出结果为:
+------+-----+
|fruits|count|
+------+-----+
| apple| 2|
|banana| 2|
|orange| 1|
+------+-----+
这样,就得到了字符串在数据帧列中的出现次数。其中,groupBy
函数用于按照指定列进行分组,count
函数用于计算每个分组中的记录数。最后,使用orderBy
函数按照出现次数降序排序结果。
在腾讯云的产品中,可以使用TencentDB for Apache Spark进行大数据分析和处理,详情请参考:TencentDB for Apache Spark。
领取专属 10元无门槛券
手把手带您无忧上云