- 博客(19)
- 资源 (6)
- 收藏
- 关注
原创 第三章 RDD编程
val lines=sc.textFile("/path/readme.md")3.1 RDD基础RDD——弹性分布式数据集。每个RDD都被分为多个分区,这些分区运行在集群中的不同节点上。RDD可以包含python、java、scala中任意类型的对象,甚至可以包含用户自定义的对象。用户可以通过两种方式创建RDD:读取外部数据集和通过对象集合创建。创建后的RDD支持两类操作:转化操
2017-12-13 19:34:02
407
原创 第一章 spark数据分析导论
1.1 spark是什么spark是一个用来实现快速而通用的集群计算的平台。spark比mapreduce更加高效,适用于各种原先需要多种不同分布式平台的场景,包括批处理、迭代算法、交互式查询、流处理。1.2 一个大一统的软件栈spark的核心是一个对由很多计算任务组成的、运行在多个工作机器或者是一个计算集群上的应用进行调度、分发以及监控的计算引擎。
2017-12-13 18:12:44
319
原创 scala学习笔记-集合
主要的集合特质Iterable指的是那些能生成用来访问集合中所有元素的Iterator的集合:val coll= ... //某种Iterableval iter=coll.iteratorwhile (iter.hasNext) 对iter.next() 执行某种操纵这是遍历一个集合最基本的方式。SeqSeq是一个有先后次序的值的序
2017-11-28 18:09:03
310
原创 scala学习笔记-高阶函数
作为值的函数在scala中,函数是头等公民,就和数字一样。可以在变量中存放函数:val fun=ceil_将fun设为ceil函数,ceil函数后的_意味着你确实指的是这个函数,而不是碰巧忘记了给它送参数说明:从技术上讲,)将ceil方法转换成了函数。在scala中,你无法直接操纵方法,而只能直接操纵函数,方法不能作为单独的表达式而存在(参数为空的方法除外),而函数可以被调用;
2017-11-27 22:40:43
276
原创 scala学习笔记-操作符
1.标识符变量、函数、类等的名称统称为标识符。2.中置操作符a 标识符 b,例如: 1 to 10 实际上是一个方法调用 1. to(10)这样的表达式称作中置表达式。3.一元操作符只有一个参数的操作符称为一元操作符。如果它出现在参数之后,那么它就是一个后置操作符。例如:a 标识符 等同于方法调用a.标识符()+、-、!、~可以作为前置操作符,出现在参数之前。它们
2017-11-27 09:39:20
314
原创 遗传算法Scala实现
package com.gaimport scala.collection.mutable.ArrayBuffer/** * 染色体 */class Chrome(val length:Int) extends Cloneable { var chrome=new Array[Char](length); var chromeLength=length; //设置基因 def setGene(be
2017-11-24 11:34:52
812
原创 遗传算法原理与实现
遗传算法形式化定义遗传算法可定义为一个8元组:SGA=(C , E , P0 ,M , O ,S ,R, T)其中,C:个体的编码方法 E:个体适应度评价函数 P0:初始群体 M:群体大小 O:选择算子 S:交叉算子 R:变异算子 T:遗传算法终止条件遗传算法伪代码:begin initializ
2017-11-24 11:33:06
751
原创 scala学习笔记-特质
1. 为什么没有多重继承scala和java一样不允许类从多个超类继承。但是scala提供“特质”而非接口。特质可以同时拥有抽象方法和具体方法,而类可以实现多个特质。2. 当做接口使用的特质scala特质完全可以像java接口那样工作。例如:trait Logger{ def log(msg:String)//抽象方法}不需要将方法声明为abstract——特质中未
2017-11-10 19:46:10
260
原创 scala学习笔记-文件和正则表达式
1. 读取行读取文件中的所有行: 调用scala.ios.Source对象的getLines方法:import scala.ios.Sourcevar source=Source.fromFile("myfile.txt","utf-8")//第一个参数可以是字符串或者java.io.File//第二个字符编码可以省略val lineIterator =source.getLine
2017-11-09 09:50:44
387
原创 scala找不到或无法加载主类 com.ase.Main
scala突然出现这个错误,网上查了很久,各种原因都排除了,最后发现是编码不一致问题,项目的编码是GBK,其中一个class 或者object 是UTF-8。这种情况下,只要修改一致就可以了
2017-11-08 16:51:58
3806
原创 win10系统安装Linux ubuntu
1. 安装VMWare虚拟机Vmware下载地址https://my.vmware.com/en/web/vmware/free#desktop_end_user_computing/vmware_player/7_0%7CPLAYER-714%7Cproduct_downloads点击安装,并一直选择下一步即可。2. 下载Linux ubu
2017-10-31 16:27:54
1061
原创 scala学习笔记-继承
1. 扩展类scala扩展类的方式与Java一样——使用extends关键字类声明为final就不能被扩展单个方法或字段声明为final,可以确保不能重写(Java中final字段是不可变的,类似scala中的val)2. 重写方法在scala中重写一个非抽象方法必须使用override修饰符scala中调用
2017-10-24 17:03:05
258
原创 scala学习笔记-对象
1. 单例对象 Scala没有静态方法或者静态字段,可以用object这个语法结构来达到同样目的。对象定义了某个类的单个实例,包含了你想要的特性:object Account{private var lastNumber =0 def newUniqueNumber() = { lastNumber+ =1; lastNumber}}当你在应用程序中需要一个新的唯一账号
2017-10-23 16:58:35
179
原创 scala学习笔记-类
1. 简单类和无参方法scala类最简单的形式与Java类似:class Counter{private var value=0 //必须初始化字段def increment(){ value+=1} //方法默认是公有的def current() =value}在scala中,类并不声明为public。scala源文件可以包含多个类,所有类都具有公有可见性使用
2017-10-23 14:36:36
232
原创 Scala学习笔记-映射和元组
1.构造映射映射是键值对偶的集合。1)不可变映射,其值不能被修改val scores=Map(" Alice"->10,"bob"->3,"merry"->5)或者val scores=Map((" Alice",10),("bob",3),("merry",5))2)可变映射val scores=scala.collect.mutable.Map(" Alice"->10
2017-10-20 09:40:09
337
原创 Scala学习笔记-数组相关操作
1. 定长数组如果需要一个长度不变的数组,可以使用scala中的Array。例如 val nums=new Array[Int](10)val s=Array("Hello","world")s(0)="GoodBye" 2. 变长数组:数组缓冲对于长度需要变化的数组,Java有ArrayList,C++有vector。Scala中数据结构ArrayBuffer
2017-10-19 17:44:00
279
原创 Scala学习笔记-控制结构和函数(2)
7.函数scala除了方法外还支持函数。方法对对象进行操作,函数不是。要定义函数,需要给出函数名、参数和函数体,例如:def abs (x: Double) =if(x >= 0) x else -x只要函数不是递归的,一般不需要指定返回类型。scala编译器可以通过= 符号右侧的表达式的类型推断出返回类型如果函数体需要多个表达式完成,可以用代码块。块中最后一个表达式的值就是函
2017-10-19 17:01:03
262
原创 Scala学习笔记-控制结构和函数(1)
1. 条件表达式 scala的if/else语法结构和Java一样。不过,在scala中if/else表达式有值,这个值就是跟在if或者else之后的表达式的值。例如: if(x>0) 1 else -1可以将if/else表达式的值赋给变量: val s=if(x>0) 1 else -1这与 if(x>0) s=1 else s=-1 效果一样。但是第一种写法可以初始化一个
2017-10-19 15:58:09
266
原创 Scala学习笔记-基础
1.声明值和变量、1)可以自己定义变量名称,以val 定义的值实际上是一个常量,你无法改变他的内容例如:val answer=8*5+2answer=0 (错误)如果要声明其值可变的变量,可以用var:例如:val answer=8*5+2answer=0 (正确)scala中鼓励使用val2)2.scala中,在变量声明或赋值语句之后,并不需要
2017-10-19 15:25:54
246
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人