将字符串转换为数字 - 在json文件上进行PySpark操作

时间:2017-01-14 03:40:52

标签: json sum pyspark

我正在学习PySpark,我遇到了转换"字符串"的问题。数字化。我四处搜索,但无法找到解决方案。请帮忙。

我能够执行以下两个命令:

人= sqlContext.read.json(" C:\ wdchentxt \ People2.json&#34) people.select('名称',people.age + 1).show()

但我得到以下错误,因为'年龄'是"不是数字列"。 如何将年龄列从字符串汇总到数字?

people.groupBy('两性&#39)。总和('年龄&#39)。显示()

我特别困惑因为people.age + 1成功了。谢谢!

2 个答案:

答案 0 :(得分:0)

你有JSON文件的例子吗?

此文档可能会有所帮助,因为它类似于您的代码: https://spark.apache.org/docs/1.6.0/sql-programming-guide.html

答案 1 :(得分:0)

你可以在pyspark dataframe中使用cast函数

df.select('gender',df.age.cast('int').alias('age')).groupBy('gender').sum('age').show()
希望它可以帮到你。