目录

介绍

从CSV加载数据

从SQLite加载数据

基本数据分析

总结


任何数据分析过程的第一步都是摄取数据集,评估数据集的清洁程度,并决定我们需要采取哪些措施来解决继承的问题。

  • 下载CSV和数据库文件-127.8 KB
  • 下载源代码122.4 KB

介绍

本文是使用PythonPandas进行数据清洗系列的一部分。它旨在利用数据科学工具和技术来使开发人员快速启动并运行。

如果您想查看本系列的其他文章,可以在这里找到它们:

  • 第1部分-介绍Jupyter和Pandas
  • 第2部分-将CSV和SQL数据加载到Pandas中
  • 第3部分-纠正Pandas中的缺失数据
  • 第4部分-合并Pandas中的多个数据集
  • 第5部分-清理Pandas DataFrame中的数据
  • 第6部分-重塑Pandas DataFrame中的数据
  • 第7部分-使用Seaborn和Pandas进行数据可视化

设置完Jupyter Notebook并初始化了一些基本库之后,我们需要加载一些数据。为此,我们将从CSV文件以及本地SQLite数据库加载数据。然后,我们将展示Pandas中可用的一些基本分析和功能,您可以使用它们来显示和执行数据的基本分析。

我们已经创建了完整的Jupyter Notebook,其中包含该系列模块的源数据文件,您可以在本地下载和安装。

在开始之前,请确保将本系列附带的customer.csv文件和remoteDB.db复制到与保存的Notebook相同的目录中。

从CSV加载数据

首先让我们看一下如何将数据从CSV文件加载到Pandas中。我们将加载与笔记本计算机相同目录中的customers.csv文件,以简化操作,但您也可以远程加载它。将一个新的输入行添加到您的笔记本,其中包含以下命令:

pd.read_csv("customers.csv")

此命令使用Pandas库加载并显示我们的customer.csv文件。

根据显示的行,您将立即看到数据的一些潜在问题,显示为NaN。您还将看到生成的输出为表格。

在Pandas中,表称为DataFrame,它是类似于电子表格的二维数据结构。

让我们将其移动到变量中,并通过将代码行修改为以下内容来显示前五行:

# Read data from the CSV files
customers = pd.read_csv("customers.csv")
print(customers.head(5))

(请注意,在这里和整篇文章中,您将在代码之后立即看到运行代码的结果。)

这会将我们的CSV读入一个变量,并显示数据结构的前五行。

从SQLite加载数据

现在,让我们从SQLite数据库将一些其他数据加载到Pandas中。我们将使用sqlite3库加载和读取数据库。您可以对常规数据库以及不同的Python库使用类似的过程,但是SQLite是无服务器的,仅需要我们先前复制的单个数据库文件。让我们以数据库的形式访问此文件。

首先,我们将修改我们的第一个代码块以包含另一个Python库:

import sqlite3 as sql

然后,在我们从CSV文件读取客户的位置下方,添加以下代码:

con = sql.connect("remoteDB.db")
products = pd.read_sql_query("SELECT * from products", con)
purchases = pd.read_sql_query("SELECT * from purchases", con)
con.close()print(products.head(5))
print(purchases.head(5))

如果我们逐步执行此代码,则第一行将连接到数据库文件remoteDB.db。接下来的两行使用Pandas从每个SQL查询的返回中创建一个DataFrame。在此示例中,有两个表,“产品”和“购买”。最后,此块中的最后一行关闭与SQL数据库的连接。

然后,我们打印每个变量的前五行的副本。这两个数据集的头部看起来非常好,因此我们稍后必须查看它们是否还有其他问题。

基本数据分析

在继续之前,让我们对数据集进行快速的基础分析。创建一个新的代码块并输入以下代码:

print(customers.shape)
print(customers.dtypes)
print(customers.describe(include="all"))

结果如下:

对于这三个表中的每一个,此代码都会为我们加载的数据生成一些基本统计信息。

  • shape方法显示每个数据帧的行数和列数。
  • dtypes方法显示涉及的数据类型。
  • describe方法(带有include="all"修饰符)显示有关数据的统计信息,例如有效值的计数,唯一值的数量,值的频率等。

请注意,有些计数与总数不符。这是因为缺少单元格中的信息,我们需要查找并更正这些信息。我们的数据集包含了几个月的购买过程中的客户和产品信息以及购买信息,因此,这为我们定义了许多不同的信息。

总结

我们使用Pandas DataFrame数据结构从CSV文件和SQL服务器加载了数据。我们还快速浏览了一些基本分析功能,这些功能显示了有关数据集的便捷信息。

现在,让我们通过探索一些发现和处理缺失值的选项来进行数据清理。

将CSV和SQL数据加载到Pandas中相关推荐

  1. java 将数据加载到内存中_java 将数据加载到内存中的操作

    将数据加载到内存中 1.建立InitListener.java package app.util; import java.util.HashMap; import java.util.Map; im ...

  2. qpixmap mysql_python – 将blob图像数据加载到QPixmap中

    我正在使用PyQt4编写一个用于前端GUI的程序,该程序访问后端数据库(可以是 MySQL或SQLite).我需要在数据库中存储一些图像数据,下面是我用来将图像文件(JPEG格式)导入数据库中的blo ...

  3. SoapUI利用Groovy把外部数据加载到request中

    默认已经用Groovy把外部数据给读取出来了,关键是读取出来后,如何加载到request中去?这里提供了两种方法: 1.该Groovy脚本的名称是"setUp" def num = ...

  4. Hive 分区表 数据加载

    1. Hive表数据的导入方式 1.1 本地上传至hdfs 命令: hdfs dfs -put [文件名] [hdfs绝对路径] 例如:测试文件 test_001.txt 内容如下 在 hdfs 绝对 ...

  5. ETL 数据加载机制概述

    ETL 是数据抽取(Extract).转换(Transform).加载(Load)的简写,它的功能是从数据源抽取出所需的数据,经过数据清洗和转换,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库 ...

  6. 泰坦尼克号-数据加载及探索性数据分析

    数据加载及探索性数据分析 这部分内容主要分:数据加载.Pandas基础.探索性数据分析. 1.导入numpy.pandas及查看python版本 import pandas as pd import ...

  7. HuggingFace Datasets来写一个数据加载脚本

    HuggingFace Datasets上传本地文件作为训练数据 这两天用自己的数据来做训练,看到datasets库中的教程,进行翻译,记下如何使用本地/私有数据集. 文章目录 HuggingFace ...

  8. hive分区、数据加载、数据导出、数据类型

    一.hive分区 1.特点: 分区表与其他表不同点在于,分区字段的值为表目录下的子目录格式 ,为: 分区字段=值 2.建表语句 create database learn2; CREATE TABLE ...

  9. Pytorch中的数据加载

    Pytorch中的数据加载 1. 模型中使用数据加载器的目的 在前面的线性回归模型中,使用的数据很少,所以直接把全部数据放到模型中去使用. 但是在深度学习中,数据量通常是都非常多,非常大的,如此大量的 ...

最新文章

  1. [USACO12MAR]拖拉机
  2. 2.数据库的基本操作针对于库层面的操作
  3. Nginx负载均衡与配置Nginx的ssl
  4. 消息 35371-聚集列存储索引
  5. mysql服务器多线程模型_mysql-线程模型
  6. php开启mysqlnd,如何启用mysqlnd的PHP?
  7. python合并 txt
  8. MySQL_数据库表结构的操作
  9. spark ui 上schedulingDelay理解
  10. 企业网络信息安全意识宣贯——屏保制作
  11. Java面试:应聘Java开发工程师的基本要求是什么?
  12. SONY UP-D898MD 或 UP-X898MD驱动在WIN10 64下的安装
  13. mmd Ray渲染 mikumikudance导入模型阴影很黑
  14. 如何在 Visual Paradigm 中创建流程图丨使用教程
  15. latex如何换页 一页放不下
  16. 【Vue-仿照element-ui自己动手封装ui组件】—— alert、confirm 弹窗
  17. vue项目中table表格固定表头和首尾列
  18. html th中加斜杠,vue element 表头添加斜线
  19. js 将一大段时间均分为很多个小时间段
  20. CIKM 2021 | 推荐系统相关论文分类整理

热门文章

  1. reactrouter4路由钩子_react router @4 和 vue路由 详解(八)vue路由守卫
  2. 通配符?子字符串匹配主字符串次数_leetcode 44 通配符匹配(c++)
  3. 免扣PNG图片素材,用着就是爽|png与jpg格式图片的区别
  4. UI设计师必备的APP设计素材
  5. UI设计干货素材|聊天APP界面,临摹学习进步快
  6. 微博html怎么编辑器,类似新浪微博的编辑器 输入@就出现可选的下拉框 是怎么实现的...
  7. k8s删除deployment_VPGAME k8s迁移实践(5) Deployment 与 Service 配置
  8. 怎么测试本地网页在不同分辨率下电脑显示效果_汇总一波百万高清壁纸站,8K分辨率的都有...
  9. Windows开发时IsWindowVisible返回错误的处理方法
  10. FD.io VPP startup.conf配置文件示例:安装后第一次配置