使用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程序完成相关数据预处理(二)相关推荐

  1. ## 使用MapReduce程序完成相关数据预处理

    使用MapReduce程序完成相关数据预处理 数据大概有2万条左右所以部分截取 (格式为csv) 1月20日,北京,大兴区,2,0,0,北京市大兴区卫健委,https://m.weibo.cn/270 ...

  2. 第五篇:数据预处理(二) - 异常值处理

    第五篇:数据预处理(二) - 异常值处理 参考文章: (1)第五篇:数据预处理(二) - 异常值处理 (2)https://www.cnblogs.com/muchen/p/6883101.html ...

  3. excel量化交易接口系统程序怎样进行数据预处理?

    在数据统计和预测的过程中,工程师基本都使用现成的算法,工程师的主要工作是根据具体业务逻辑预处理数据和选择算法,即可以使用excel量化交易接口系统来进行数据预处理. 首先要对数据预处理包括数据的归一化 ...

  4. 程序和相关数据存放在计算机,当前正在执行的程序和相关数据存放在计算机的( )中。...

    当前的程的中P协性(据在过程证数中的传输议可以保可靠. 他称之为,正执行计人富勒设量生大批的美国计出家庭住宅产的一种可以,年,意思是(,词复合是个. 效果列性的序技术经济农业评价,序和相关面是个方一般 ...

  5. python数据预处理案例_对pandas进行数据预处理的实例讲解

    参加kaggle数据挖掘比赛,就第一个赛题Titanic的数据,学习相关数据预处理以及模型建立,本博客关注基于pandas进行数据预处理过程.包括数据统计.数据离散化.数据关联性分析 引入包和加载数据 ...

  6. 数据预处理Part1——数据清洗

    文章目录 一.数据预处理 二.数据清洗 1.缺失值处理 1.1 丢弃缺失值 1.2 补全缺失值 1.3 真值转换 1.4 不处理 1.5 特征选择 2.异常值 2.1 异常值处理 2.2 保留异常数据 ...

  7. 跟着尚硅谷学大数据(二)MapReduce

    第1章 MapReduce概述 1.1 MapReduce定义 MapReduce是一个分布式运算程序的编程框架,是用户开发"基于Hadoop的数据分析应用"的核心框架. MapR ...

  8. Hadoop 中文编码相关问题 -- mapreduce程序处理GBK编码数据并输出GBK编码数据

    2019独角兽企业重金招聘Python工程师标准>>> Hadoop 中文编码相关问题 -- mapreduce程序处理GBK编码数据并输出GBK编码数据 输入是GBK文件, 输出也 ...

  9. (二)数据预处理 2019年研究生数学建模D题《汽车行驶工况构建》

    在准备阶段,我们取得了突破性的进展,全面掌握了这个题目的来源和做法,下面开始做第一问. 解题思路 明确技术路线 开始做题目之前,在前面的基础工作开展后,就可以明确汽车行驶工况构建的基本研究技术路线了: ...

最新文章

  1. SAP MM MIGO + 301 K 可以对供应商寄售库存跨工厂转库
  2. 一大波物联网僵尸正在袭来,都有啥安全保护方法?
  3. Python爬虫介绍及实战入门
  4. salt远程执行python脚本_SaltStack远程执行Windows job程序(黑窗口)填坑经过
  5. javascript乘法和加法_Web前端:JavaScript中的NaN是什么?
  6. 使用Scikit-learn,Spotify API和Tableau Public进行无监督学习
  7. 15分钟,教你用Python爬网站数据,并用BI可视化分析!
  8. plSql安装以及连接远程oracle相关配置
  9. 气愤ing,身份证丢了到底要不要挂失?
  10. pos机改造迷你打印机_小票打印机如何自动弹出钱箱
  11. Exchange 2007 SP1 SCR
  12. 异常连接导致的内存泄漏排查
  13. edger多组差异性分析_edgeR基因表达差异分析
  14. 【物联网项目系列】——使用netty框架做一个环保hj212协议即时通讯工具(接收解析处理实时数据)
  15. cf大区服务器显示人数合区后,穿越火线:各大区终合并,跨区作战成现实,以后就只有4个大区了!...
  16. 三菱模拟量fx3u4da_模拟量输出模块FX3U-4DA手册三菱FX3U-4DA安装使用手册 - 广州凌控...
  17. 网页视频播放的去Flash方案
  18. Python Matplotlib散点图
  19. qbo机器人软件总体情况
  20. WLAN室内、室外无线信号覆盖解决方案

热门文章

  1. 修改 Docker 的默认存储路径
  2. sqlite3自增key设定(创建自增字段)
  3. python 余弦_Python快速余弦距离
  4. python的sort_python sort、sorted
  5. 超详细的Python matplotlib 绘制柱状图
  6. Linux+mysql重置_linux环境mysql重置密码
  7. python从外部传入参数_从另一个Python脚本运行一个Python脚本,并传入参数 - python...
  8. c++读取文本文件里的指定位置的字符_利用FSO对象向文本文件中写入信息
  9. 百度推送 android7.1,【SDK版本更新】Android SDK 5.7.1
  10. mysql负载均衡与同步_MySql数据库从同步负载均衡实时备份