使用MapReduce程序完成相关数据预处理(二)
使用MapReduce程序完成相关数据预处理(二)
数据大概有2万条左右所以部分截取 (格式为csv)
1月20日,北京,大兴区,2,0,0,北京市大兴区卫健委,https://m.weibo.cn/2703012010/4462638756717942,
1月20日,北京,昌平区,2,0,0,北京市卫健委,http://wjw.beijing.gov.cn/xwzx_20031/wnxw/202001/t20200121_1620353.html,
1月20日,北京,外地来京,1,0,0,北京市卫健委,http://wjw.beijing.gov.cn/xwzx_20031/wnxw/202001/t20200121_1620353.html,
1月20日,广东,深圳市,1,0,0,深圳市卫健委,http://wjw.sz.gov.cn/gsgg/202001/t20200120_18987619.htm,
1月20日,广东,深圳市,8,0,0,广东卫健委,http://wsjkw.gd.gov.cn/zwyw_yqxx/content/post_2876926.html,
1月20日,广东,珠海市,3,0,0,珠海市卫健委,http://wsjkj.zhuhai.gov.cn/zwgk/tzgg/content/post_2461447.html,
1月20日,广东,湛江市,1,0,0,广东卫健委,http://wsjkw.gd.gov.cn/zwyw_yqxx/content/post_2876926.html,https://www.zhanjiang.gov.cn/zjwjj/sy/gzdt/content/post_1031598.html,
1月20日,广东,惠州市,1,0,0,广东卫健委,http://wsjkw.gd.gov.cn/zwyw_yqxx/content/post_2876926.html,
要求:
、
2、数据清洗:以下规则同时进行
规则1 从上述小题中,截取前5个字段。
规则2 过滤出省份为湖北省的数据。
规则3 对5个字段去重,生成新的数据,将结果数据输出到hdfs。
在集群执行命令:
结果:
代码如下:
Java代码
package webgame_demo;import java.io.IOException;import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.mapreduce.Reducer;
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;import webgame_demo.yq_filter.MyMap.MyReduce;public class yq_filter {public static class MyMap extends Mapper<LongWritable, Text, Text, Text>{@Overrideprotected void map(LongWritable key, Text value,Mapper<LongWritable, Text, Text, Text>.Context context)throws IOException, InterruptedException {String line = value.toString(); String[] split = line.split(",");String newsplit = "";if(split[1].contains("湖北")) {for(int i = 0;i < 5;i++) {newsplit+=split[i];}}context.write(new Text(newsplit), new Text("")); }public static class MyReduce extends Reducer<Text, Text, Text, Text>{@Overrideprotected void reduce(Text k2, Iterable<Text> v2s,Reducer<Text, Text, Text, Text>.Context context)throws IOException, InterruptedException {context.write(k2, new Text(""));}}}public static void main(String[] args) throws IOException, ClassNotFoundException, InterruptedException { //设置配置参数Configuration conf = new Configuration();//conf.set("mapred.textoutputformat.separator", ",");//创建任务Job job = Job.getInstance(conf, yq_filter.class.getSimpleName());//指定jar文件job.setJarByClass(yq_filter.class);//指定输入路径,数据在hdfs上的输入路径,指定第一个参数是hdfs输入路径FileInputFormat.addInputPath(job,new Path(args[0]));//指定map的类job.setMapperClass(MyMap.class);//指定map输出的key和value的数据类型。job.setMapOutputKeyClass(Text.class);job.setMapOutputValueClass(Text.class);//指定reduce类以及输出数据类型。job.setReducerClass(MyReduce.class);job.setOutputKeyClass(Text.class);job.setOutputValueClass(Text.class);//指定输出路径hdfsFileOutputFormat.setOutputPath(job, new Path(args[1]));//提交任务,如果是true,会返回任务执行的进度信息等。job.waitForCompletion(true);}}
使用MapReduce程序完成相关数据预处理(二)相关推荐
- ## 使用MapReduce程序完成相关数据预处理
使用MapReduce程序完成相关数据预处理 数据大概有2万条左右所以部分截取 (格式为csv) 1月20日,北京,大兴区,2,0,0,北京市大兴区卫健委,https://m.weibo.cn/270 ...
- 第五篇:数据预处理(二) - 异常值处理
第五篇:数据预处理(二) - 异常值处理 参考文章: (1)第五篇:数据预处理(二) - 异常值处理 (2)https://www.cnblogs.com/muchen/p/6883101.html ...
- excel量化交易接口系统程序怎样进行数据预处理?
在数据统计和预测的过程中,工程师基本都使用现成的算法,工程师的主要工作是根据具体业务逻辑预处理数据和选择算法,即可以使用excel量化交易接口系统来进行数据预处理. 首先要对数据预处理包括数据的归一化 ...
- 程序和相关数据存放在计算机,当前正在执行的程序和相关数据存放在计算机的( )中。...
当前的程的中P协性(据在过程证数中的传输议可以保可靠. 他称之为,正执行计人富勒设量生大批的美国计出家庭住宅产的一种可以,年,意思是(,词复合是个. 效果列性的序技术经济农业评价,序和相关面是个方一般 ...
- python数据预处理案例_对pandas进行数据预处理的实例讲解
参加kaggle数据挖掘比赛,就第一个赛题Titanic的数据,学习相关数据预处理以及模型建立,本博客关注基于pandas进行数据预处理过程.包括数据统计.数据离散化.数据关联性分析 引入包和加载数据 ...
- 数据预处理Part1——数据清洗
文章目录 一.数据预处理 二.数据清洗 1.缺失值处理 1.1 丢弃缺失值 1.2 补全缺失值 1.3 真值转换 1.4 不处理 1.5 特征选择 2.异常值 2.1 异常值处理 2.2 保留异常数据 ...
- 跟着尚硅谷学大数据(二)MapReduce
第1章 MapReduce概述 1.1 MapReduce定义 MapReduce是一个分布式运算程序的编程框架,是用户开发"基于Hadoop的数据分析应用"的核心框架. MapR ...
- Hadoop 中文编码相关问题 -- mapreduce程序处理GBK编码数据并输出GBK编码数据
2019独角兽企业重金招聘Python工程师标准>>> Hadoop 中文编码相关问题 -- mapreduce程序处理GBK编码数据并输出GBK编码数据 输入是GBK文件, 输出也 ...
- (二)数据预处理 2019年研究生数学建模D题《汽车行驶工况构建》
在准备阶段,我们取得了突破性的进展,全面掌握了这个题目的来源和做法,下面开始做第一问. 解题思路 明确技术路线 开始做题目之前,在前面的基础工作开展后,就可以明确汽车行驶工况构建的基本研究技术路线了: ...
最新文章
- SAP MM MIGO + 301 K 可以对供应商寄售库存跨工厂转库
- 一大波物联网僵尸正在袭来,都有啥安全保护方法?
- Python爬虫介绍及实战入门
- salt远程执行python脚本_SaltStack远程执行Windows job程序(黑窗口)填坑经过
- javascript乘法和加法_Web前端:JavaScript中的NaN是什么?
- 使用Scikit-learn,Spotify API和Tableau Public进行无监督学习
- 15分钟,教你用Python爬网站数据,并用BI可视化分析!
- plSql安装以及连接远程oracle相关配置
- 气愤ing,身份证丢了到底要不要挂失?
- pos机改造迷你打印机_小票打印机如何自动弹出钱箱
- Exchange 2007 SP1 SCR
- 异常连接导致的内存泄漏排查
- edger多组差异性分析_edgeR基因表达差异分析
- 【物联网项目系列】——使用netty框架做一个环保hj212协议即时通讯工具(接收解析处理实时数据)
- cf大区服务器显示人数合区后,穿越火线:各大区终合并,跨区作战成现实,以后就只有4个大区了!...
- 三菱模拟量fx3u4da_模拟量输出模块FX3U-4DA手册三菱FX3U-4DA安装使用手册 - 广州凌控...
- 网页视频播放的去Flash方案
- Python Matplotlib散点图
- qbo机器人软件总体情况
- WLAN室内、室外无线信号覆盖解决方案
热门文章
- 修改 Docker 的默认存储路径
- sqlite3自增key设定(创建自增字段)
- python 余弦_Python快速余弦距离
- python的sort_python sort、sorted
- 超详细的Python matplotlib 绘制柱状图
- Linux+mysql重置_linux环境mysql重置密码
- python从外部传入参数_从另一个Python脚本运行一个Python脚本,并传入参数 - python...
- c++读取文本文件里的指定位置的字符_利用FSO对象向文本文件中写入信息
- 百度推送 android7.1,【SDK版本更新】Android SDK 5.7.1
- mysql负载均衡与同步_MySql数据库从同步负载均衡实时备份