首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何基于pyspark值创建带列

如何基于pyspark值创建带列
EN

Stack Overflow用户
提问于 2018-07-09 13:52:11
回答 1查看 313关注 0票数 0

我是PySpark的新手,我有下面的任务,我在那里挣扎。我试过很少接触他们,但他们都没有正常工作。数据如下:

代码语言:javascript
运行
复制
id|numb_of_count|
1|3|
2|5|
3|6|
4|2|
5|0|
6|15|
7|8|
8|99|

我希望取得以下成果:

代码语言:javascript
运行
复制
id|numb_of_count|banding|
1|3|3-5|
2|5|3-5| 
3|6|6-10|
4|2|2|
5|0|0|
6|15|+11|
7|8|6-10|
8|99|+11|

由于我有一个很大的数据集,如何才能以最有效的方式实现这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-09 15:20:23

在火星雨中,时/否则等于if/ are。如果df是您的实际数据,那么:

代码语言:javascript
运行
复制
new_df = df.withColumn('banding', when(col('numb_of_count') <3,col('numb_of_count')).when(col('numb_of_count') <=5 , '3-5').when(col('numb_of_count') <= 10, '6-10').otherwise('+11'))

df.withColumn

df.withColumn以第一个参数作为新列的名称向框架中添加一个新列。更多信息这里

什么时候/什么时候

类似于if/else,更多信息这里

这是一个很好的回答,可以了解更多关于何时/其他方面的信息。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51247247

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档