2-2到2-4

计算出所有人的平均年龄:

val lines = sc.textFile("/root/data/scala/people/page.txt")
val count = lines.count()
val total = lines.map(line => line.split(" ")(1)).map(t=>t.trim.toInt).collect().reduce((a,b)=>a+b)
val avgAge = total.toDouble / count.toDouble
print("平均年龄:"+avgAge)

错误记录: 

/root/data/scala/people/page.txt,这个里面的文件格式形成不太正确。

于是,我的所有活动不再以成败而论,而以自己不断地进行生活的实践活动而论,通过不断地实践活动来纠正自己的认识,衡量自己不断地进行做事的准则,实践才是衡量真理的唯一法则。

//hdfs路径 /export/servers/hadoop-2.7.4/bin
//hdfs中创建文件夹 ./hdfs dfs -mkdir -p /user/hadoop

import scala.util.Random
val outputFile = "hdfs://hadoop01:9000/usr/hadoop/page.txt"
val rand = new Random()
val arr = new Array[String](1000)
for(i<-1 to 1000){
arr(i-1)=1+""+rand.nextInt(100)
}
val rdd = sc.parallelize(arr)
rdd.saveAsTextFile(outputFile)

//显示数据  ./hdfs dfs -cat /user/hadoop/page.txt/*

 

val lines = sc.textFile("hdfs://hadoop01:9000/user/hadoop/page.txt")
val count = lines.count()
val total = lines.map(line => line.split(" ")(1)).map(t=>t.trim.toInt).collect().reduce((a,b)=>a+b)
val avgAge = total.toDouble / count.toDouble
print("平均年龄:"+avgAge)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值