首页 > 其他 > 详细

spark dataframe 将null 改为 nan

时间:2018-07-09 19:00:40      阅读:448      评论:0      收藏:0      [点我收藏+]

由于我要叠加rdd某列的数据,如果加数中出现nan,结果也需要是nan,nan可以做到,但我要处理的数据源中的nan是以null的形式出现的,null不能叠加,而且我也不能删掉含null的行,于是我用了sparksql 的 ISNULL和CASE WHEN方法:

Case When 方法:

如果obs_PRE_1h列有值则不变,没有则变为nan,注意这里的nan需要写成 float(‘NaN’) 

SELECT (CASE WHEN ISNULL(obs_PRE_1h)=true THEN float(‘NaN‘) ELSE obs_PRE_1h END) as obs,(CASE WHEN ISNULL(fcst_PRE_1h)=true THEN float(‘NaN‘) ELSE fcst_PRE_1h END) as fcst FROM parquetFile 

 


 源dataframe是这样的:

技术分享图片

结果:

技术分享图片

 

spark dataframe 将null 改为 nan

原文:https://www.cnblogs.com/sunhuahuaa/p/9285111.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!