数据分析三剑客【AIoT阶段一(下)】(十万字博文 保姆级讲解)—Pandas—pandas入门(一)

简介: 你好,感谢你能点进来本篇博客,请不要着急退出,相信我,如果你有一定的 Python 基础,想要学习 Python数据分析的三大库:numpy,pandas,matplotlib;这篇文章不会让你失望,本篇博客是 【AIoT阶段一(下)】 的内容:Python数据分析,

二、Pandas

1.pandas入门

image.png

  • Python在数据处理和准备方面一直做得很好,但在数据分析和建模方面就差一些。pandas帮助填补了这一空白,使您能够在Python中执行整个数据分析工作流程,而不必切换到更特定于领域的语言,如R。
  • 与出色的 jupyter工具包和其他库相结合,Python中用于进行数据分析的环境在性能、生产率和协作能力方面都是卓越的。
  • pandas是 Python 的核心数据分析支持库,提供了快速、灵活、明确的数据结构,旨在简单、直观地处理关系型、标记型数据。pandas是Python进行数据分析的必备高级工具。
  • pandas的主要数据结构是 Series(一维数据)与 DataFrame(二维数据),这两种数据结构足以处理金融、统计、社会科学、工程等领域里的大多数案例
  • 处理数据一般分为几个阶段:数据整理与清洗、数据分析与建模、数据可视化与制表,Pandas 是处理数据的理想工具。


1.1 数据结构

1.1.1 一维结构(Series)

import pandas as pd
s = pd.Series(data = [9, 8, 7, 6], index = ['a', 'b', 'c', 'd'])
display(s)

image.png

可以看到,我们创建了索引(index)为 'a' 'b' 'c' 'd',data 为9 8 7 6的一维结构,我们还可以不指定索引(index),那么就会默认为 0 1 2 ...

image.png

一维Series和之前NumPy有何不同呢?

区别在于索引,是一一对应的,即索引也可以拥有自己的“名字”,而NumPy则是:自然索引(0 ~ n)

1.1.2 二维结构(DataFrame)

import pandas as pd
import numpy as np
pd.DataFrame(data = np.random.randint(0, 150, size = (5, 3)))

image.png

默认的行索引和列索引也都是从0开始的,我们说过,pandas可以自己定义我们的索引:

import pandas as pd
import numpy as np
# columns 用来设置列索引,index 用来设置行索引
pd.DataFrame(data = np.random.randint(0, 150, size = (5, 3)),
            columns = ['Python', 'English', 'Math'], index = list('ABCDE'))

image.png

我们发现,表格中的数都是正数,我们可以用 dtype 属性设置为小数或者其他:

import pandas as pd
import numpy as np
# dtype 用来设置数的类型
pd.DataFrame(data = np.random.randint(0, 150, size = (5, 3)),
            columns = ['Python', 'English', 'Math'], index = list('ABCDE'),
            dtype = np.float32)

image.png

下面介绍另一种创建的方法:我们学过 Python 后,你可能会发现,在 Python 中的字典这种数据类型好像和这个特别像,故我们可以使用字典去进行创建:

import pandas as pd
import numpy as np
pd.DataFrame(data = {'Python':np.random.randint(100, 150, size = 5),
            'English':np.random.randint(90, 130, size = 5),
            'Math':np.random.randint(100, 150, size = 5)})

image.png

我们设置了列索引,接下来我们来设置行索引:

import pandas as pd
import numpy as np
pd.DataFrame(data = {'Python':np.random.randint(100, 150, size = 5),
            'English':np.random.randint(90, 130, size = 5),
            'Math':np.random.randint(100, 150, size = 5)},
            index = list('ABCDE'))

image.png

我们当然可以对其进行排序,比如我们按照行索引的大小进行降序:

import pandas as pd
import numpy as np
df = pd.DataFrame(data = {'Python':np.random.randint(100, 150, size = 5),
            'English':np.random.randint(90, 130, size = 5),
            'Math':np.random.randint(100, 150, size = 5)},
            index = list('ABCDE'))
df.sort_index(ascending = False)

image.png

1.2 数据查看

🚩接下来来介绍一些查看数据的方法:

import numpy as np
import pandas as pd
# 创建 shape(150, 3)的二维标签数组结构DataFrame
df = pd.DataFrame(data = np.random.randint(0, 151, size = (150, 3)),
                 columns = ['Python', 'English', 'Math'])
# 查看其属性、概览和统计信息
display(df.head(10))  # 显示头部10个,默认5个
display(df.tail(10))  # 查看末尾10个,默认5个
display(df.shape)     # 查看形状,行数和列数
display(df.dtypes)    # 查看数据类型
# 改变数据类型:
# 把 'Python' 一列的数据类型由 int32 改为 int64
df['Python'] = df['Python'].astype(np.int64)
display(df.dtypes)    # 查看数据类型
display(df.index)     # 查看行索引
display(df.columns)   # 查看列索引

71.png

import numpy as np
import pandas as pd
df = pd.DataFrame(data = np.random.randint(0, 151, size = (150, 3)),
                 columns = ['Python', 'English', 'Math'])
display(df.values)    # 查看对象值(即这个二维ndarray数组)

image.png

import numpy as np
import pandas as pd
df = pd.DataFrame(data = np.random.randint(0, 151, size = (150, 3)),
                 columns = ['Python', 'English', 'Math'])
# 查看数值类型列的汇总统计,计数、平均值、标准差、最小值、四分位数、最大值
display(df.describe()) 
# 查看列索引、数据类型、非空计数和内存信息
display(df.info())

72.png


目录
相关文章
|
20天前
|
数据采集 存储 数据挖掘
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第27天】在数据分析领域,Python的Pandas库因其强大的数据处理能力而备受青睐。本文介绍了Pandas在数据导入、清洗、转换、聚合、时间序列分析和数据合并等方面的高效技巧,帮助数据分析师快速处理复杂数据集,提高工作效率。
51 0
|
14天前
|
机器学习/深度学习 数据采集 数据挖掘
解锁 Python 数据分析新境界:Pandas 与 NumPy 高级技巧深度剖析
Pandas 和 NumPy 是 Python 中不可或缺的数据处理和分析工具。本文通过实际案例深入剖析了 Pandas 的数据清洗、NumPy 的数组运算、结合两者进行数据分析和特征工程,以及 Pandas 的时间序列处理功能。这些高级技巧能够帮助我们更高效、准确地处理和分析数据,为决策提供支持。
33 2
|
12天前
|
并行计算 数据挖掘 大数据
Python数据分析实战:利用Pandas处理大数据集
Python数据分析实战:利用Pandas处理大数据集
|
12天前
|
数据采集 数据可视化 数据挖掘
利用Python进行数据分析:Pandas库实战指南
利用Python进行数据分析:Pandas库实战指南
|
2月前
|
机器学习/深度学习 数据处理 Python
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
79 0
|
21天前
|
存储 数据挖掘 数据处理
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第26天】Python 是数据分析领域的热门语言,Pandas 库以其高效的数据处理功能成为数据科学家的利器。本文介绍 Pandas 在数据读取、筛选、分组、转换和合并等方面的高效技巧,并通过示例代码展示其实际应用。
31 2
|
4月前
|
数据挖掘 Python
【Python】已解决:Python pandas读取Excel表格某些数值字段结果为NaN问题
【Python】已解决:Python pandas读取Excel表格某些数值字段结果为NaN问题
411 0
|
1月前
|
机器学习/深度学习 并行计算 大数据
【Python篇】深入挖掘 Pandas:机器学习数据处理的高级技巧
【Python篇】深入挖掘 Pandas:机器学习数据处理的高级技巧
87 3
|
1月前
|
数据采集 数据挖掘 API
Python数据分析加速器:深度挖掘Pandas与NumPy的高级功能
在Python数据分析的世界里,Pandas和NumPy无疑是两颗璀璨的明星,它们为数据科学家和工程师提供了强大而灵活的工具集,用于处理、分析和探索数据。今天,我们将一起深入探索这两个库的高级功能,看看它们如何成为数据分析的加速器。
41 1
|
2月前
|
机器学习/深度学习 数据采集 监控
Pandas与Matplotlib:Python中的动态数据可视化
Pandas与Matplotlib:Python中的动态数据可视化

热门文章

最新文章

下一篇
无影云桌面