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

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

3.2 数学和统计方法

🚩pandas对象拥有一组常用的数学和统计方法。它们属于汇总统计,对Series汇总计算获取mean、max值或者对DataFrame行、列汇总计算返回一个Series。

3.2.1 简单统计指标

创建数据:

import numpy as np
import pandas as pd
df = pd.DataFrame(data = np.random.randint(0, 100,size = (20, 3)),
                  index = list('ABCDEFHIJKLMNOPQRSTU'),
                  columns = ['Python', 'Tensorflow', 'Keras'])
df

25.png

我们现在来把一部分数据设置为空:

def convert(x):
    if x > 80:
        return np.NaN
    else:
        return x
df['Python'] = df['Python'].map(convert)
df['Tensorflow'] = df['Tensorflow'].apply(convert)
df['Keras'] = df['Keras'].transform(convert)
df

26.png

现在我们想知道到底有多少个空数据,我们可以自己去数,但这显然是低效的方法,使用 count() 函数可以直接去统计有多少个非空数据:

df.count()  # 统计非空数据的个数

image.png

我们重新来构造数据:

import numpy as np
import pandas as pd
df = pd.DataFrame(data = np.random.randint(0, 100,size = (20, 3)),
                  index = list('ABCDEFHIJKLMNOPQRSTU'),
                  columns = ['Python', 'Tensorflow', 'Keras'])
df

27.png

使用 median() 可以计算数据的中位数:

df.median()  # 中位数

image.png

display(df.quantile(q = 0.5)) # 返回位于数据 50% 位置的数
display(df.quantile(q = 0.8)) # 返回位于数据 80% 位置的数

image.png

我们也可以使用如下的方法实现同样的效果:

df.quantile(q = [0.5, 0.8])

image.png

3.2.2 索引标签、位置获取

display(df['Python'].argmin()) # 计算最小值位置
display(df['Keras'].argmax()) # 最大值位置

image.png

display(df.idxmax()) # 最大值索引标签
display(df.idxmin()) # 最小值索引标签

image.png

索引就是自然数,标签就是我们初始设置的 ABCD…,索引和标签是一一对应的,如 0 对应的就是 A

3.2.3 更多统计指标

创建数据:

import numpy as np
import pandas as pd
df = pd.DataFrame(data = np.random.randint(0, 5,size = (20, 3)),
                  index = list('ABCDEFHIJKLMNOPQRSTU'),
                  columns = ['Python', 'Tensorflow', 'Keras'])
df

28.png

使用 value_counts() 可以统计元素出现的次数:

# 统计元素出现次数
df['Python'].value_counts()

image.png

使用 unique() 可以实现去重:

# 去重
df['Python'].unique()

image.png

调用 cumsum() 实现累加,调用 cumprod() 实现累乘:

# 累加
display(df.cumsum())
# 累乘
display(df.cumprod())

29.png

cummin() 的作用是累计最小值,即碰到更小的数后,该数往后所有数都变成这个更小的数,cummax() 的作用是累计最大值,即碰到更大的数后,该数往后所有的数都变成这个更大的数:

# 累计最小值
display(df.cummin())
# 累计最大值
display(df.cummax())

30.png

计算标准差调用 std(),计算方差调用 var()

# 计算标准差
display(df.std())
# 计算方差
display(df.var())

image.png

计算差分使用 diff(),差分就是这一行减上一行的结果,计算百分比的变化使用 pct_change():

# 计算差分
# 差分:和上一行相减
display(df.diff())
# 计算百分比变化
display(df.pct_change())

31.png

3.2.4 高级统计指标

我们使用 cov() 和 corr() 用来分别计算协方差和相关性系数:

协方差:image.png

相关性系数:image.png

# 属性的协方差
display(df.cov())
# Python和Keras的协方差
display(df['Python'].cov(df['Keras'])) 

image.png

# 所有属性相关性系数
display(df.corr())
# 单一属性相关性系数
display(df.corrwith(df['Tensorflow']))

image.png


目录
相关文章
|
22天前
|
数据采集 数据可视化 数据挖掘
Pandas数据应用:天气数据分析
本文介绍如何使用 Pandas 进行天气数据分析。Pandas 是一个强大的 Python 数据处理库,适合处理表格型数据。文章涵盖加载天气数据、处理缺失值、转换数据类型、时间序列分析(如滚动平均和重采样)等内容,并解决常见报错如 SettingWithCopyWarning、KeyError 和 TypeError。通过这些方法,帮助用户更好地进行气候趋势预测和决策。
123 71
|
21天前
|
存储 数据采集 数据可视化
Pandas数据应用:电子商务数据分析
本文介绍如何使用 Pandas 进行电子商务数据分析,涵盖数据加载、清洗、预处理、分析与可视化。通过 `read_csv` 等函数加载数据,利用 `info()` 和 `describe()` 探索数据结构和统计信息。针对常见问题如缺失值、重复记录、异常值等,提供解决方案,如 `dropna()`、`drop_duplicates()` 和正则表达式处理。结合 Matplotlib 等库实现数据可视化,探讨内存不足和性能瓶颈的应对方法,并总结常见报错及解决策略,帮助提升电商企业的数据分析能力。
128 73
|
2月前
|
数据采集 存储 数据挖掘
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第27天】在数据分析领域,Python的Pandas库因其强大的数据处理能力而备受青睐。本文介绍了Pandas在数据导入、清洗、转换、聚合、时间序列分析和数据合并等方面的高效技巧,帮助数据分析师快速处理复杂数据集,提高工作效率。
106 0
|
18天前
|
存储 数据采集 数据可视化
Pandas数据应用:医疗数据分析
Pandas是Python中强大的数据操作和分析库,广泛应用于医疗数据分析。本文介绍了使用Pandas进行医疗数据分析的常见问题及解决方案,涵盖数据导入、预处理、清洗、转换、可视化等方面。通过解决文件路径错误、编码不匹配、缺失值处理、异常值识别、分类变量编码等问题,结合Matplotlib等工具实现数据可视化,并提供了解决常见报错的方法。掌握这些技巧可以提高医疗数据分析的效率和准确性。
63 22
|
23天前
|
数据采集 数据可视化 索引
Pandas数据应用:股票数据分析
本文介绍了如何使用Pandas库进行股票数据分析。首先,通过pip安装并导入Pandas库。接着,从本地CSV文件读取股票数据,并解决常见的解析错误。然后,利用head()、info()等函数查看数据基本信息,进行数据清洗,处理缺失值和重复数据。再者,结合Matplotlib和Seaborn进行数据可视化,绘制收盘价折线图。最后,进行时间序列分析,设置日期索引、重采样和计算移动平均线。通过这些步骤,帮助读者掌握Pandas在股票数据分析中的应用。
59 5
|
2月前
|
机器学习/深度学习 数据采集 数据挖掘
解锁 Python 数据分析新境界:Pandas 与 NumPy 高级技巧深度剖析
Pandas 和 NumPy 是 Python 中不可或缺的数据处理和分析工具。本文通过实际案例深入剖析了 Pandas 的数据清洗、NumPy 的数组运算、结合两者进行数据分析和特征工程,以及 Pandas 的时间序列处理功能。这些高级技巧能够帮助我们更高效、准确地处理和分析数据,为决策提供支持。
58 2
|
2月前
|
存储 数据挖掘 数据处理
Python数据分析:Pandas库的高效数据处理技巧
【10月更文挑战第26天】Python 是数据分析领域的热门语言,Pandas 库以其高效的数据处理功能成为数据科学家的利器。本文介绍 Pandas 在数据读取、筛选、分组、转换和合并等方面的高效技巧,并通过示例代码展示其实际应用。
68 2
|
2月前
|
数据采集 数据可视化 数据挖掘
Python数据分析:Pandas库实战指南
Python数据分析:Pandas库实战指南
|
2月前
|
并行计算 数据挖掘 大数据
Python数据分析实战:利用Pandas处理大数据集
Python数据分析实战:利用Pandas处理大数据集
|
2月前
|
数据采集 数据可视化 数据挖掘
利用Python进行数据分析:Pandas库实战指南
利用Python进行数据分析:Pandas库实战指南