数据来源为kaggle平台,这是一份全球大型超市四年的零售数据集,数据详尽。数据集为 “superstore_dataset2011-2015.csv”,共有51290条数据,共24个特征。数据集字段说明如下: Row ID Order ID Order Date Ship Date Ship Mode Customer ID 行号 订单号 订单日期 发货日期 运送方式 客户号 Customer Name Segment City State Country Postal Code 客户姓名 市场细分 城市 州 国家 邮编 Market Region Product ID Category Sub-Category Product Name 市场 地区 产品ID 商品类别 子类别 商品名称 Sales Quantity Discount Profit Shipping Cost Order Priority 销售额 销量 折扣 利润 运费 订单优先级 任务一 数据清洗 1.读取superstore_dataset2011-2015.csv,查看数据记录总条数、总字段数,并输出前5条数据; 2.对列名进行一下重命名,采用下划线命名法,使其符合Python的命名规范; 3.为了方便数据统计,将销量额、折扣、利润改为浮点型,销量改为整数; 4.下单日期改为日期类型; 5.为了便于分析每年和每月的销售情况,增加年份列和月份列; 6.创建销售统计数据集,包含订单号、下单日期、客户ID、地区、销售额、销量、利润、年份、月份信息,并将数据保存到superstore.db数据库中sales表; 7.创建商品统计数据集,包含订单号、商品ID、商品类别、商品子种类、销售额、销量、利润,并将数据保存到superstore.db数据库中products表; 8.创建用户统计数据集,包含订单号、订单日期、用户ID、类别、销售额、销量、利润、年、月,将数据保存到superstore.db数据库中customer表。

时间: 2024-02-01 16:04:10 浏览: 29
好的,您的问题是关于数据清洗的。下面是回答: 1.读取数据集,并查看数据记录总条数、总字段数,并输出前5条数据: ```python import pandas as pd # 读取数据集 df = pd.read_csv('superstore_dataset2011-2015.csv', encoding='unicode_escape') # 查看数据记录总条数、总字段数 print(f"数据记录总条数:{len(df)}") print(f"总字段数:{len(df.columns)}") # 输出前5条数据 print(df.head(5)) ``` 2.对列名进行重命名,采用下划线命名法,使其符合Python的命名规范: ```python # 对列名进行重命名 df.columns = df.columns.str.lower().str.replace(' ', '_') # 输出列名 print(df.columns) ``` 3.为了方便数据统计,将销量额、折扣、利润改为浮点型,销量改为整数: ```python # 将销量、销售额、折扣、利润的数据类型转换为正确的类型 df['quantity'] = df['quantity'].astype(int) df['sales'] = df['sales'].astype(float) df['discount'] = df['discount'].astype(float) df['profit'] = df['profit'].astype(float) ``` 4.下单日期改为日期类型: ```python # 将下单日期的数据类型转换为日期类型 df['order_date'] = pd.to_datetime(df['order_date']) ``` 5.为了便于分析每年和每月的销售情况,增加年份列和月份列: ```python # 增加年份列和月份列 df['year'] = df['order_date'].dt.year df['month'] = df['order_date'].dt.month ``` 6.创建销售统计数据集,并将数据保存到superstore.db数据库中sales表: ```python import sqlite3 # 创建销售统计数据集 sales_df = df[['order_id', 'order_date', 'customer_id', 'region', 'sales', 'quantity', 'profit', 'year', 'month']].copy() # 连接数据库 conn = sqlite3.connect('superstore.db') # 将数据保存到数据库中的sales表中 sales_df.to_sql('sales', conn, if_exists='replace', index=False) # 关闭连接 conn.close() ``` 7.创建商品统计数据集,并将数据保存到superstore.db数据库中products表: ```python # 创建商品统计数据集 products_df = df[['order_id', 'product_id', 'category', 'sub-category', 'sales', 'quantity', 'profit']].copy() # 连接数据库 conn = sqlite3.connect('superstore.db') # 将数据保存到数据库中的products表中 products_df.to_sql('products', conn, if_exists='replace', index=False) # 关闭连接 conn.close() ``` 8.创建用户统计数据集,并将数据保存到superstore.db数据库中customer表: ```python # 创建用户统计数据集 customer_df = df[['order_id', 'order_date', 'customer_id', 'segment', 'sales', 'quantity', 'profit', 'year', 'month']].copy() # 连接数据库 conn = sqlite3.connect('superstore.db') # 将数据保存到数据库中的customer表中 customer_df.to_sql('customer', conn, if_exists='replace', index=False) # 关闭连接 conn.close() ```

相关推荐

最新推荐

recommend-type

pytorch 语义分割-医学图像-脑肿瘤数据集的载入模块

所以数据量很少,之前也是按照上面这篇博客标注了关于图片id的txt文件,但是这次是应用在kaggle脑肿瘤数据集上,kaggle脑肿瘤数据集百度云下载连接:链接:https://pan.baidu.com/s/12RTIv-RqEZwYCm27Im2Djw 提取码...
recommend-type

kaggle练习-共享单车数据分析

项目背景:提供两年的每小时租金数据。训练集是每个月的前19天,而测试集是每月的20号到月底。必须仅使用租借期之前的可用信息来预测测试集涵盖的每个小时内租用的自行车总数。 一、载入数据 1.1收集数据 一般而言,...
recommend-type

数据挖掘比赛入门_2015

这个是数据挖掘比赛的专业知识技巧整理的文档,是以去年阿里天猫推荐比赛为例,希望能对大家有帮助。
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB柱状图在信号处理中的应用:可视化信号特征和频谱分析

![matlab画柱状图](https://img-blog.csdnimg.cn/3f32348f1c9c4481a6f5931993732f97.png) # 1. MATLAB柱状图概述** MATLAB柱状图是一种图形化工具,用于可视化数据中不同类别或组的分布情况。它通过绘制垂直条形来表示每个类别或组中的数据值。柱状图在信号处理中广泛用于可视化信号特征和进行频谱分析。 柱状图的优点在于其简单易懂,能够直观地展示数据分布。在信号处理中,柱状图可以帮助工程师识别信号中的模式、趋势和异常情况,从而为信号分析和处理提供有价值的见解。 # 2. 柱状图在信号处理中的应用 柱状图在信号处理
recommend-type

用Spring boot和vue写一个登录注册界面

好的,这是一个比较常见的技术问题,我可以为您提供一些参考资料和思路。首先,您可以使用Spring Boot作为后端框架来处理用户认证和注册的逻辑,比如使用Spring Security实现用户登录认证。同时,您还需要设计相应的数据模型和数据库表结构来存储用户信息。在前端方面,您可以使用Vue.js作为框架来构建登录注册页面,使用Axios来发起API请求并和后端进行交互。当然,在实现过程中,还需要考虑一些具体细节,比如数据校验、安全性和用户体验等方面。希望这些信息能够帮助到您。
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。
recommend-type

"互动学习:行动中的多样性与论文攻读经历"

多样性她- 事实上SCI NCES你的时间表ECOLEDO C Tora SC和NCESPOUR l’Ingén学习互动,互动学习以行动为中心的强化学习学会互动,互动学习,以行动为中心的强化学习计算机科学博士论文于2021年9月28日在Villeneuve d'Asq公开支持马修·瑟林评审团主席法布里斯·勒菲弗尔阿维尼翁大学教授论文指导奥利维尔·皮耶昆谷歌研究教授:智囊团论文联合主任菲利普·普雷教授,大学。里尔/CRISTAL/因里亚报告员奥利维耶·西格德索邦大学报告员卢多维奇·德诺耶教授,Facebook /索邦大学审查员越南圣迈IMT Atlantic高级讲师邀请弗洛里安·斯特鲁布博士,Deepmind对于那些及时看到自己错误的人...3谢谢你首先,我要感谢我的两位博士生导师Olivier和Philippe。奥利维尔,"站在巨人的肩膀上"这句话对你来说完全有意义了。从科学上讲,你知道在这篇论文的(许多)错误中,你是我可以依
recommend-type

MATLAB柱状图在数据分析中的作用:从可视化到洞察

![MATLAB柱状图在数据分析中的作用:从可视化到洞察](https://img-blog.csdnimg.cn/img_convert/1a36558cefc0339f7836cca7680c0aef.png) # 1. MATLAB柱状图概述** 柱状图是一种广泛用于数据可视化的图表类型,它使用垂直条形来表示数据中不同类别或组别的值。在MATLAB中,柱状图通过`bar`函数创建,该函数接受数据向量或矩阵作为输入,并生成相应的高度条形。 柱状图的优点在于其简单性和易于理解性。它们可以快速有效地传达数据分布和组别之间的比较。此外,MATLAB提供了广泛的定制选项,允许用户调整条形颜色、