精华内容
下载资源
问答
  • 这个是Kettle一个转换的脚本,可以通过这个demo结合java代码来进行数据清洗
  • shell脚本数据清洗

    2019-04-16 16:09:36
    本文通过上一节Hadoop离线项目之数据清洗开发的数据清洗jar包,对日志文件进行清洗,并把清洗后的结果移动到hive表里,并刷新元数据信息。并把这个过程写到shell脚本里。 jar包路径: /home/hadoop/app/hadoop-2.6.0...

    本文通过上一节Hadoop离线项目之数据清洗开发的数据清洗jar包,对日志文件进行清洗,并把清洗后的结果移动到hive表里,并刷新元数据信息。并把这个过程写到shell脚本里。
    jar包路径:

    /home/hadoop/app/hadoop-2.6.0-cdh5.7.0/lib/g6-hadoop-1.0.jar
    

    jar包主程序:

    com.ruozedata.hadoop.mapreduce.driver.LogETLDriver
    

    hdfs上日志文件路径:

    /g6/hadoop/accesslog/
    

    hdfs上日志文件清洗后要放的路径:

    /g6/hadoop/access/output/
    

    hive外部表g6_access指定的路径:

    /g6/hadoop/access/clear/
    

    shell脚本代码:

    #!/bin/bash
    if [ $# != 1 ] ; then
    echo "USAGE: g6-train-hadoop.sh <dateString>"
    echo " e.g.: g6-train-hadoop.sh 20180717"
    exit 1;
    fi
    
    process_date=$1
    
    echo "--------------------step1: mapreduce etl--------------------"
    hadoop jar /home/hadoop/app/hadoop-2.6.0-cdh5.7.0/lib/g6-hadoop-1.0.jar com.ruozedata.hadoop.mapreduce.driver.LogETLDriver /g6/hadoop/accesslog/${process_date}.log /g6/hadoop/access/output/day=${process_date}
    
    echo "--------------------step2:mv data to DW--------------------"
    hdfs dfs -rm -r /g6/hadoop/access/clear/day=${process_date}
    hdfs dfs -mv  /g6/hadoop/access/output/day=${process_date} /g6/hadoop/access/clear/
    
    echo "--------------------step4:flush meatadata--------------------"
    hive -e "use g6_hadoop; alter table g6_access add if not exists partition(day='${process_date}');"
    

    然后运行shell脚本:

    [hadoop@10-9-140-90 shell]$ ./g6-train-hadoop.sh 
    USAGE: g6-train-hadoop.sh <dateString>
     e.g.: g6-train-hadoop.sh 20180717
    [hadoop@10-9-140-90 shell]$ ./g6-train-hadoop.sh 20180717
    ......此处省略
    

    运行成功后,去hive里查看一下:

    hive (g6_hadoop)> select * from g6_access where day=20180717 limit 1;
    OK
    cdn     region  level   time    ip      domain  url     traffic day
    baidu   CN      E       20180717042142  156.89.48.178   v2.go2yd.com    http://v1.go2yd.com/user_upload/1531633977627104fdecdc68fe7a2c4b96b2226fd3f4c.mp4_bd.mp4       62109   20180717
    Time taken: 0.42 seconds, Fetched: 1 row(s)
    hive (g6_hadoop)> 
    
    展开全文
  • 2、插入shell脚本 需要设置环境变量,E:\Anaconda3;E:\Anaconda3\Scripts;E:\Anaconda3\Library\bin 需要添加.py文件默认打开方式为python.exe 3、新建转换 首先设置变量以便于动态读取时间戳和动态读取excel...

    1、新建job
    2、插入shell脚本

    	需要设置环境变量,E:\Anaconda3;E:\Anaconda3\Scripts;E:\Anaconda3\Library\bin
    	需要添加.py文件默认打开方式为python.exe
    


    3、新建转换

    	首先设置变量以便于动态读取时间戳和动态读取excel文件目录;
    	在执行sql脚本中需要勾选执行每一行,变量替换,绑定参数?;
    	在excel输入中选中的文件的文件/目录下使用${变量},即可取到excel文件名。
    

    在这里插入图片描述
    4、在数据库中建表,执行所有步骤即可。

    	create TABLESPACE ts_flow_data LOGGING datafile 'E:\ORACLE\T_FLOW_DATA_01.DBF' SIZE 128M 
    	AUTOEXTEND ON NEXT 128M MAXSIZE 20G;
    	COMMIT;
    
    	CREATE TABLE t_flow_data ( fid NUMBER, fcleandate TIMESTAMP(6), fbizdate TIMESTAMP(6), 
    	fcoustomername  NVARCHAR2(255), fmaterialname NVARCHAR2(255), fmodel NVARCHAR2(255), 
    	fqty NUMBER(28, 16), fprice NUMBER(19, 4), famount NUMBER(19, 4), fshengchanqiye NVARCHAR2(255), 
    	flot NVARCHAR2(80), fmfg TIMESTAMP(6), fexp TIMESTAMP(6), fsupplier NVARCHAR2(255))
    	TABLESPACE ts_flow_data;
    	COMMIT;
    
    	CREATE SEQUENCE seq_flow_data MINVALUE 1 NOMAXVALUE START WITH 1 
    	INCREMENT BY 1 CACHE 100 ORDER;
    	COMMIT;
    
    	CREATE TRIGGER trg_flow_data
    	BEFORE INSERT ON t_flow_data
    	FOR EACH ROW
    		BEGIN
    		    SELECT
    		        seq_flow_data.NEXTVAL
    		    INTO :new.fid
    		    FROM
    		        dual;
    		END;
    	COMMIT;
    
    展开全文
  • 此次数据是用来导入HIVE表中,但是由于数据不规范,需要做清洗, 下面的数据不仅有空出一行,并且每个需要录入的字段都有空格。 | 1 | 2 | 2016-06-03 | | 1 | 3 | 2016-06-08 | | 2 | 3 | 2016-06-08 | | 3 | 4 ...

    数据

    此次数据是用来导入HIVE表中,但是由于数据不规范,需要做清洗,
    下面的数据不仅有空出一行,并且每个需要录入的字段都有空格。

    | 1 | 2 | 2016-06-03 |
    
    | 1 | 3 | 2016-06-08 |
    
    | 2 | 3 | 2016-06-08 |
    
    | 3 | 4 | 2016-06-09 |
    

    清洗方法

    此次咱用shell的sed方法来做清洗,代码如下:

    #!/bin/sh
    echo 'input clearing file name?'
    read name
    
    #删除所有空格
    sed -i s/[[:space:]]//g $name
    #首尾替换
    sed -i 's/^[|]*//g' $name
    sed -i 's/[|]*$//g' $name
    #去空行:
    sed -i '/^\s*$/d' $name
    #中间的换成逗号
    sed -i 's/|/,/g' $name
    
    展开全文
  • python之数据清洗脚本

    2018-11-09 19:44:24
    #coding=utf-8 import numpy as np import pandas as pd na_list=['NO CLUE','N/A...data=pd.read_csv('311-service-requests.csv',na_values=na_list,dtype={'Incident Zip':str})#列值数据类型设置为字符串 #prin...
    #coding=utf-8
    import numpy as np
    import pandas as pd
    na_list=['NO CLUE','N/A','0']#na包含的类型
    data=pd.read_csv('311-service-requests.csv',na_values=na_list,dtype={'Incident Zip':str})#列值数据类型设置为字符串
    #print(data['Incident Zip'].head())#--查看前几行,不改变源数据
    #data['Incident Zip'].unique()#--查看唯一值,不改变源数据
    #data['Incident Zip'][data['Incident Zip'].str.len()>5]#查看元素长度大于5的元素,不改变源数据
    data['Incident Zip']=data['Incident Zip'].str.slice(0,5)#源数据重新赋值,改变源数据
    #print(data['Incident Zip'])
    data.loc[data['Incident Zip']=='00000','Incident Zip']=np.nan#值为0的元素设为nan,loc改变源数据
    unique_zip=data['Incident Zip'].fillna(False).unique().astype('str')#fillna(Flase)
    unique_zip.sort()#排序,改变源数据
    #print(unique_zip)
    zips=data['Incident Zip']
    is_close=zips.str.startswith('0')|zips.str.startswith('1')#取字符传以1或0开头的元素
    is_far=~(is_close)&zips.notna()#~表示反条件,即不以0或1开头且不为空的元素
    print(data[is_far]['Incident Zip'])#花式索引
    

     

    展开全文
  • Kettle7中使用Java脚本进行数据清洗

    千次阅读 2019-03-29 17:13:14
    1.首先,Kettle7.1下载li链接:https://sourceforge.net/projects/pentaho/files/Data%20Integration/7.1/pdi-ce-7.1.0.0-12.zip/download 2.打开这个文件:Spoon.bat 3.假设就这三个步骤: ...
  • 脚本导入REDD数据集中的数据纠缠(转换,清理和修复数据) 跑步: 修改redd_dir以指向REDD数据集的位置。 修改rd_dir以指向导入文件的目标。 对于命令shell,运行./Import_REDD_dataset.py将创建一个文件(每...
  • 本实例通过python脚本对电影数据进行清洗,帮助读者了解hive调用python脚本的整个流程。 操作步骤: 1、创建基表 CREATE TABLE u_data ( userid INT, //用户ID movieid INT, //电影ID rating INT, //电影...
  • 使用脚本清洗 AS (userid, movieid, rating, weekday) -- 输出值(子表) FROM ml_100k;     然后我就失败了   转载于:https://www.cnblogs.com/wqbin/p/10363135.html
  • 离线项目之数据清洗 1. 脚本编写 #!/bin/sh time=$1 spark-submit \ --master spark://192.168.1.55:7077 \ --num-executors 1 \ --executor-memory 3G \ --executor-cores 4 \ --conf "spark.default.parallelism...
  • awk是unix,linux中处理文本的好工具,本文用一个实例说明awk脚本的编写及使用.
  • 获取和清洗数据课程项目 该项目的目的是演示您收集,使用和清理数据集的能力。 目标是准备可用于以后分析的整洁数据。 目前,可穿戴计算是所有数据科学中最令人兴奋的领域之一-例如,请参见本文。 Fitbit,Nike和...
  • APP_JAR=$HADOOP_HOME/share/hadoop/mapreduce/dataclean-1.0-SNAPSHOT.jar INPUT=/input/oldlog1 OUTPUT=/output hadoop fs -rm -r $OUTPUT PROG=com.etc.RunJob hadoop jar $APP_JAR $PROG $INPUT $OUTPUT ~
  • 在项目当中遇到一种情况:我需要根据不同字段的值综合判断该数据属于我划分的哪种类型。 如果是单个字段我们可以根据kettle提供的switch / ...java为我们数据清洗提供了更加广泛的维度,恰巧kettle提供的多种脚本...
  • 制作数据集时,利用python对标注数据清洗和可视化说明:进行数据清洗步骤之前,将标注的好的xml文件和数据原图分别存放在不同的文件夹中。Step1: 检查所标注的xml文件中是否有命名不合规范的存在Step2: 对比数据源图...
  • Hive离线数据清洗测试

    2020-12-26 21:45:16
    1、离线数据平台权限申请:申请离线开发平台,数据仓库,快速取数的权限,以及查看sql脚本的权限 2、从数据开发得到清洗的项目ID,任务ID,最终的HIVE表名,申请对应表的数据权限,数据搬运任务ID,搬运REDIS/HBASE...
  • 数据治理】数据清洗原型

    千次阅读 2019-06-16 17:43:44
    构思了一个数据清洗的功能。对于数据清洗的关键是通过数据探查,制订出具体的清洗目标要求。为了简化数据清洗的复杂度,可以将清洗要求归纳为业务人员容易理解的约束,比如,非空、不含空格、唯一等这类简单的规则,...
  • python数据分析-数据清洗流程(附脑图和代码实例)

    千次阅读 多人点赞 2020-03-11 16:11:28
    无论是做机器学习还是做数据分析,都离不开获取数据后的第一步-数据清洗工作。据统计,数据清洗工作占据整个工作时间百分之50左右,有的甚至能达到百分之70。下面我将介绍我进行数据清洗得思路流程。
  • Python:14个常用数据清洗代码

    千次阅读 多人点赞 2019-12-23 15:16:51
    1、数据整合(concat) train_data = pd . read_csv ( 'training30.csv' ) test_data = pd . read_csv ( 'test30.csv' ) total_data = pd . concat ( [ train_data , test_data ] , axis = 0 ) total_...
  • 在下在做数据分析时,原始数据是excel格式的,导入Hive表时将其转化为txt格式。  excel文件转txt格式的步骤如下:  1.打开另存为  2.选择txt格式保存  3.打开转成的txt将编码修改为UTF-8 在...
  • 目录1....2.正则表达式做数据清洗 2.1 从网页HTML标签中提取文本 import re text = "<div><p>\n你好\nPython:</p><p>Python是一种跨平台的计算机程序设计语言。 </p><
  • 数据清洗实例分析

    万次阅读 2017-02-05 10:54:18
    数据清洗:如填充缺失数据、消除噪声数据等,主要是通过分析“脏数据”的产生原因和存在形式,利用现有的数据挖掘手段和方法去清洗“脏数据”,将“脏数据”转化为满足数据质量要求或应用要求的数据,从而提高数据集...
  • Java数据压缩与传输实例 1个目标文件 摘要:Java源码,文件操作,数据压缩,文件传输 Java数据压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲区、写入数据到文件、...
  • 大数据预处理之数据清洗,shell脚本
  • 数据分析】5大SQL数据清洗方法!

    千次阅读 2020-10-26 11:00:00
    基于此,我拓展了部分内容,写了一个常用数据清洗的SQL对比版,脚本很简单,重点是这些清洗场景和逻辑,大纲如图: 01 删除指定列、重命名列 场景: 多数情况并不是底表的所有特征(列)都对分析有用,这个时候就只...
  • 数据采集和数据清洗一、数据清洗1.数据去重(一)相关知识1> pandas读取csv文件-read_csv()2> pandas的去重函数-drop_duplicates()(二)本关任务(三)参考代码2.处理空值(一)相关知识1> DataFrame中...
  • logstash支持把配置写入文件 xxx.conf,然后通过读取配置文件来采集数据 ./bin/logstash –f xxx.conf   logstash最终会把数据封装成json类型,默认会添加@timestamp时间字段、host主机字段、type字段。原消息数据...
  • logstash常见数据清洗配置

    千次阅读 2020-06-29 11:53:45
    ogstash通过插件的形式来配置input,filter,output,在消费数据后,如果需要对数据做处理,需要用到filter的很多功能。最近使用logstash传递kafka数据到es时,了解了一些logstash处理数据的方式,以下logstash的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,867
精华内容 4,346
关键字:

脚本清洗数据