文档章节

spark dataframe 新增列

弘_轩
 弘_轩
发布于 2017/01/17 17:42
字数 126
阅读 1045
收藏 0

往往对df增加列是比较常见的操作,df合并,转rdd之类的操作

有下面几种方式:

import org.apache.spark.sql.functions._

1、如果增加的列是基于df列的变化


//新增一列以oldColName * 2 为新列,$"oldColName" 相当于 col("oldColName")
df.withColumn("newColName", $"oldColName"*2)

2、以UDF方式增加

val cmsUrlPatten = """(^http[s]?://.+_)[0-9]+\.(shtml|html){1}.*""".r


def url2cms(url: String): String = {
    val tagUrl = url.split("\\?")(0)
    if (cmsUrlPatten.findAllIn(tagUrl).isEmpty) url
    else {
      val cmsUrlPatten(urlPre, urlEnd) = tagUrl
      s"${urlPre}1.$urlEnd"
    }
  }

val sqlfunc = udf((arg: String) => url2cms(arg))

trafficDF.withColumn("cmsUrl", sqlfunc($"url"))

 

© 著作权归作者所有

弘_轩
粉丝 5
博文 16
码字总数 10368
作品 0
福州
高级程序员
私信 提问
Spark 2.0 时代全面到来 —— 2.0.1 版本发布

距离Spark 2.0.0发布两个月后,Spark 2.0.1版本发布了,这是一个修正版本,共处理了300多个Issue,涉及spark稳定性和bug等方面的修复 ,它的发布意味着Spark 2.0接近生产环境使用要求,想要尝...

达尔文
2016/10/08
13.4K
22
Spark 2.0 预览:更简单,更快,更智能

Apache Spark 2.0 技术预览在 Databricks Community Edition 发布。该预览包使用upstream branch-2.0构建,当启动Cluster时,使用预览包和选择“2.0 (Tech Preview)” 一样简单。 离最终的A...

oschina
2016/05/12
7K
6
基于Alluxio系统的Spark DataFrame高效存储管理技术

介绍 越来越多的公司和组织开始将Alluxio和Spark一起部署从而简化数据管理,提升数据访问性能。Qunar最近将Alluxio部署在他们的生产环境中,从而将Spark streaming作业的平均性能提升了15倍,...

开源大数据
01/30
0
0
基于Spark的机器学习实践 (二) - 初识MLlib

1 MLlib概述 1.1 MLlib 介绍 ◆ 是基于Spark core的机器学习库,具有Spark的优点 ◆ 底层计算经过优化,比常规编码效率往往要高 ◆ 实现了多种机器学习算法,可以进行模型训练及预测 1.2 Spark ...

javaedge
04/09
0
0
Apache Spark 2.0.0 发布,APIs 更新

Apache Spark 2.0.0 发布了,Apache Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句...

oschina
2016/07/28
9.7K
22

没有更多内容

加载失败,请刷新页面

加载更多

医疗在线客服咨询系统有哪些特点?

随着中国互联网网站的的快速发展,至今医疗行业已经拥有了独立的的运营网站,其中最具特色的便属于医疗在线客服咨询系统,医疗在线客服咨询系统为每个访问网站的患者提供即时的网络在线客服服...

唯喏
43分钟前
9
0
skywalking(容器部署)

skywalking(容器部署) 标签(空格分隔): APM [toc] 1. Elasticsearch SkywalkingElasticsearch 5.X(部分功能报错、拓扑图不显示) Skywalking需要Elasticsearch 6.X docker network create......

JUKE
49分钟前
7
0
解决Unable to find a single main class from the following candidates [xxx,xxx]

一、问题描述 1.1 开发环境配置 pom.xml <plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><!--一定要对上springboot版本号,因......

TeddyIH
50分钟前
7
0
玩转Spring Boot 注册Servlet、Filter、Listener

玩转Spring Boot 注册Servlet、Filter、Listener JAVA架构师Ya七月 2019-08-23 玩转Spring Boot 注册Servlet、Filter、Listener 在Servlet 3.0之前我们都是使用web.xml进行配置,需要增加Ser...

Java架构师ya七
53分钟前
5
0
Dubbo服务限制大数据传输抛Data length too large: 13055248, max payload: 8388608解决方案

当dubbo服务提供者向消费层传输大数据容量数据时,会受到Dubbo的限制,报类似如下异常: 2019-08-23 11:04:31.711 [ DubboServerHandler-XX.XX.XX.XXX:20880-thread-87] - [ ERROR ] [com.al...

huangkejie
53分钟前
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部