大数据预处理

简介: 大数据预处理

1 数据提供

为了保证实践的真实性,本章为读者提供了一个较大的数据文件,即sogou.500w.utf8,该文件是大数据领域很有名的一个供研究用的数据文件,内容是sogou网络访问日志数据,该文件被众多研究和开发人员所采用。

找到sogou.500w.utf8文件,将其复制到Master的“/home/csu/resources/”目录(或者读者自己的任意目录)下。以下的大部分操作均围绕该数据文件进行。

2 查看数据

less sogou.500w.utf8

wc -l sogou.500w.utf8

按下Enter键后系统显示“5000000 sogou.500w.utf8”,可见文件确实有500万行。Linux中“wc”命令的功能是统计指定文件中的行数、字数、字节数,并将统计结果显示输出。参数“-l”表示统计行数,“-w”表示统计字数,“-c”表示统计字节数。

head -1000 sogou.500w.utf8 >sogou.1000.utf8

按下Enter键后可得到一个有1000行数据的文件sogou.1000.utf8(文件名由用户自己决定,可以是任意的名字,如sogou.demo)。读者也可以查看一下新文件的内容或行数。

3 数据扩展

很多时候用户希望扩展现有文件,例如增加新的字段,以便容纳更多的内容。下面我们就来扩展sogou.500w.utf8文件,增加年、月、日、小时4个新字段,扩展后的文件就有10个字段了。

#!/bin/bash
#infile=/data/sogou-data/sogou.500w.utf8
infile=$1
#outfile=/data/sogou-data/sogou.500w.utf8.final
outfile=$2
awk -F '\t' '{print $0"\t"substr($1,0,4)"\t"substr($1,4,2)"\t"substr($1,6,2)"\t"substr($1,8,2)}' $infile > $outfile

./sogou-log-extend.sh sogou.500w.utf8 sogou.500w.utf8.ext

less sogou.500w.utf8.ext

4 数据过滤

#!/bin/bash
#infile=/data/sogou-data/sogou.500w.utf8
infile=$1
#outfile=/data/sogou-data/sogou.500w.utf8.final
outfile=$2
awk -F"\t" '{if($2 != "" && $3 != "" && $2 != " " && $3 != " ") print $0}' $infile > $outfile

5 数据上传

由于要在Hadoop大数据平台上工作,所以需要将上述数据文件上传到HDFS中。首先确保已经启动了Hadoop,接下来在HDFS上创建“/sogou”目录,执行“hadoop fs -mkdir /sogou”命令;最后创建“20211103”子目录,命令是“hadoop fs –mkdir /sogou/20211103”。

abc280e4e4004221ae98d33b28b11942.png

hadoop fs -put ~/resources/sogou.500w.utf8 /sogou/20211103/

hadoop fs -mkdir /sogou_ext

hadoop fs -mkdir /sogou_ext/20211103

hadoop fs -put ~/resources/sogou.500w.utf8.flt /sogou_ext/20211103/


相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
目录
相关文章
|
3月前
|
机器学习/深度学习 算法 数据建模
探索XGBoost:时间序列数据建模
探索XGBoost:时间序列数据建模
71 2
|
2月前
|
数据采集 监控 安全
数据预处理
【2月更文挑战第25天】
|
14天前
|
数据采集 机器学习/深度学习 算法
scikit-learn中的数据预处理:从清洗到转换
【4月更文挑战第17天】在机器学习中,scikit-learn是用于数据预处理的强大Python库,涵盖数据清洗和转换。数据清洗涉及处理缺失值(如使用SimpleImputer和IterativeImputer填充)和异常值,以及分类数据的编码(如标签编码和独热编码)。数据转换包括特征缩放(如StandardScaler和MinMaxScaler)和特征选择(过滤、包装和嵌入方法)。这些工具能提升数据质量,优化模型性能,但需根据具体问题选择合适方法。
|
2月前
|
数据采集 Python
数据清洗是数据预处理的重要步骤
数据清洗是数据预处理的重要步骤
19 0
|
3月前
|
数据采集 机器学习/深度学习 Python
掌握XGBoost:特征工程与数据预处理
掌握XGBoost:特征工程与数据预处理
121 3
|
5月前
|
机器学习/深度学习 数据采集 算法
特征工程
特征工程是指对原始数据进行转换和提取,以创建新的特征,使得机器学习算法能够更好地理解和预测数据。特征工程是机器学习中非常重要的一个步骤,它能够改善模型的性能,提高模型的准确性和鲁棒性。
61 2
|
11月前
|
机器学习/深度学习 数据采集 数据处理
数据预处理与特征工程:提升机器学习模型性能
在机器学习领域,数据预处理和特征工程是构建强大、准确的模型的关键步骤。这些步骤的正确实施可以显著提高模型的性能和鲁棒性。本文将探讨数据预处理和特征工程的重要性,以及一些常用的技术和策略,帮助您在构建机器学习模型时取得更好的结果。
240 0
|
12月前
|
数据采集 机器学习/深度学习 Python
机器学习 - 数据预处理中的 特征离散化 方法
在数据分析中,我们认为在某个范围内取值过于密集的特征认为是取值”连续“的特征。出于某些需求经常需要将这些”连续特征进行离散化“。本文介绍三种比较实用的数据离散化方法。 本文介绍可供参考的三种特征离散化方法的Python实现。
196 1
|
机器学习/深度学习 数据采集 算法
【机器学习】(27)使用sklearn实现数据预处理
【机器学习】(27)使用sklearn实现数据预处理
118 0
|
机器学习/深度学习
一、特征工程
常用的特征工程方式?
98 0
一、特征工程