自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xuejianbest的专栏

技术分享 偶有心得

  • 博客(9)
  • 收藏
  • 关注

原创 C语言:文件I/O操作

C语言读写文件的步骤一般是: 创建或打开文件 > 读或写文件 > 关闭文件 当然读或写的过程中还可以通过操作当前文件偏移量来控制读写位置。 下面分别介绍这些函数:头文件:#include <fcntl.h>//此头文件定义了以下oflagO_RDONLY //只读0O_WRONLY //只写1O_RDWR //读写2...

2018-08-20 15:46:36 1581

原创 spark:使用Encoder生成DataFrame

基于spark,使用scala语言:object Test { def main(args: Array[String]): Unit = { import org.apache.spark.sql.SparkSession val spark = SparkSession.builder().appName("encoder_test").mast...

2018-08-14 15:23:41 6905 1

原创 spark:schema和string互相转换

有时候我们会有这样的需求,将一个Dataset的schema保存下来。 我们知道schema是一个StructType对象,下面是我写的一个类,能够对schema和string进行互相转换。 使用了scala语言,基于spark,且不用增加新的依赖。import org.json4s.JsonDSL._import org.json4s.jackson.JsonMethods._imp...

2018-08-14 15:02:12 3452 1

原创 spark:Dataset的join操作

以下是两个具有相同列名的Dataset按照同名列相等进行join操作,join结果中同名列只会出现一个:val df1 = Seq((1, 2, 3),(1, 1, 1)).toDF("a", "b", "c")val df2 = Seq((1, 2, 4),(2, 2, 2)).toDF("a"

2018-08-14 14:40:54 6071

原创 spark:将csv文件读取为DataFrame

以下内容在spark2.2和spark2.3中测试都通过通用转换形式:spark.read.schema(sch).option("header", true).csv("/path/file.csv")注意以下几点:csv会完全按照指定的schema结构进行转换,若不指定schema默认都解析为StringType(若指定了option("inferSchema", t..

2018-08-14 14:31:03 13704 1

原创 spark:udf函数处理null值

我们有个DataFrame对象df:df.showdf.printSchema+----+----+| str| dou|+----+----+|null| 1.0|| a |null|+----+----+root|-- str: string (nullable = true)|-- dou: double (nullable = true)看以下代码:v...

2018-08-14 14:19:11 4786

原创 spark:几种给Dataset增加列的方式

我们有一个DataFrame对象:val df = spark.createDataset(Seq(("a", 23, 1.0), ("b", 10, 2.0))).toDF("s", "i", "d")df.showdf.printSch

2018-08-14 14:11:11 10733

原创 spark:聚合函数填坑记之first

我们有一张表:val df = spark.createDataset(Seq( (1, "a", 66), (2, "a", 22), (3, "a", 11), (4, "b", 22), (5, "b&quo

2018-08-14 14:01:43 4840 2

原创 Spark:基于莱文斯坦(Levenshtein)距离计算字符串相似度

以下程序代码基于spark,使用scala语言,测试时间:2018-08-03str1和str2相似度 = 1 - Levenshtein距离 / max(length(str1), length(str2)) val df = spark.createDataset(Seq( (1, "ab", "abc"), (2, "bc"

2018-08-14 13:44:07 1537

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除