数据分析三剑客【AIoT阶段一(下)】(十万字博文 保姆级讲解)—NumPy—Numpy 高级—训练场(2)(十二)

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

2.5.6 矩阵的每一行的元素都减去该行的平均值(注意,平均值计算时指定axis,以及减法操作时形状改变)

import numpy as np
A = np.random.randint(0, 10, size = (4, 5))
display(A)
# 计算每一行的平均值:
B = A.mean(axis = 1)
display(B)
# 需要注意,我们计算的平均值是一行四列
# 但是我们要让每一行的元素都减去该平均值
# 这就需要我们让其形状改变为四列一行
B = B.reshape(-1, 1) 
# 然后利用广播机制,即可进行计算
display(A - B)

image.png

2.5.7 打印出以下函数(要求使用np.zeros创建8*8的矩阵):

[[0 1 0 1 0 1 0 1]

[1 0 1 0 1 0 1 0]

[0 1 0 1 0 1 0 1]

[1 0 1 0 1 0 1 0]

[0 1 0 1 0 1 0 1]

[1 0 1 0 1 0 1 0]

[0 1 0 1 0 1 0 1]

[1 0 1 0 1 0 1 0]]

import numpy as np
arr = np.zeros(shape = (8, 8), dtype = np.int16)
# 将奇数行进行修改
arr[::2, 1::2] = 1
# 将偶数行进行修改
arr[1::2, ::2] = 1
display(arr)

image.png

2.5.8 正则化一个5行5列的随机矩阵(数据统一变成0~1之间的数字,相当于进行缩小)

正则的概念:矩阵A中的每一列减去这一列最小值,除以每一列的最大值减去每一列的最小值(提示:

轴axis给合适的参数!!!)

image.png

import numpy as np
A = np.random.randint(1, 10, size = (5, 5))
display(A)
# axis = 1 代表行
display(A.min(axis = 1))
# axis = 0 代表列
display(A.min(axis = 0))
# 根据公式计算
B = (A - A.min(axis = 0)) / (A.max(axis = 0) - A.min(axis = 0))
display(B)

30.png

2.5.9 如何根据两个或多个条件过滤numpy数组。加载鸢尾花数据,根据第一列小于5.0并且第三列大于1.5作为条件,进行数据筛选。(提示,需要使用逻辑与运算:&)

我们的数据:

链接:https://pan.baidu.com/s/1VaPHJa6YttfnedO0ewDRtQ

提取码:5u92

我们在下载好数据之后,把它移入到我们如下文件夹中:(直接下载到桌面后,找到该文件夹的位置,然后拖进去即可)

image.png

image.png

首先我们来介绍一下 .csv 文件,它其实就是一个文本文件,我们打开它(默认打开路径为Excel)

image.png

我们也可以选择打开方式为记事本方式:

image.png

通过观察不难看出,数据之间通过,相隔

接下来介绍一个新方法:loadtxt(),其作用为加载数据,比如:np.loadtxt('./iris.csv', delimiter = ','),其作用为打开路径'./iris.csv'的文件,这些数据直接通过,进行分隔。

import numpy as np
# 加载了文本文件,储存数据都是结构化数据
iris = np.loadtxt('./iris.csv', delimiter = ',')
display(iris)

image.png

可以看出,这些数据是以二维数组的形式展开的,每一维都有四个数据,分别代表:花萼长度,花萼宽度,花瓣长度,花瓣宽度

import numpy as np
# 加载了文本文件,储存数据都是结构化数据
# 花萼长度、花萼宽度、花瓣长度、花瓣宽度
iris = np.loadtxt('./iris.csv', delimiter = ',')
# 第一列小于5.0
cnt1 = iris[:, 0] < 5
# 第三列大于1.5
cnt2 = iris[:, 2] > 1.5
# 逻辑与运算
cnt = cnt1 & cnt2
display(iris[cnt])

image.png

2.5.10 计算鸢尾花数据每一行的softmax得分(exp表示自然底数e的幂运算)

image.png

import numpy as np
iris = np.loadtxt('./iris.csv', delimiter = ',')
def softmax(x):
    exp = np.exp(x)
    # 每一行求和,并且进行形状改变(变成二维,可进行广播)
    # axis = 1 表示计算每一行的和
    res = exp / exp.sum(axis = 1).reshape(-1, 1)
    return res.round(3) # 保留3位小数
res = softmax(iris)
display(res)

32.png


目录
相关文章
|
10天前
|
机器学习/深度学习 数据采集 数据挖掘
解锁 Python 数据分析新境界:Pandas 与 NumPy 高级技巧深度剖析
Pandas 和 NumPy 是 Python 中不可或缺的数据处理和分析工具。本文通过实际案例深入剖析了 Pandas 的数据清洗、NumPy 的数组运算、结合两者进行数据分析和特征工程,以及 Pandas 的时间序列处理功能。这些高级技巧能够帮助我们更高效、准确地处理和分析数据,为决策提供支持。
26 2
|
1月前
|
机器学习/深度学习 数据采集 算法
探索Python科学计算的边界:NumPy、Pandas与SciPy在大规模数据分析中的高级应用
【10月更文挑战第5天】随着数据科学和机器学习领域的快速发展,处理大规模数据集的能力变得至关重要。Python凭借其强大的生态系统,尤其是NumPy、Pandas和SciPy等库的支持,在这个领域占据了重要地位。本文将深入探讨这些库如何帮助科学家和工程师高效地进行数据分析,并通过实际案例来展示它们的一些高级应用。
49 0
探索Python科学计算的边界:NumPy、Pandas与SciPy在大规模数据分析中的高级应用
|
1月前
|
数据采集 数据挖掘 API
Python数据分析加速器:深度挖掘Pandas与NumPy的高级功能
在Python数据分析的世界里,Pandas和NumPy无疑是两颗璀璨的明星,它们为数据科学家和工程师提供了强大而灵活的工具集,用于处理、分析和探索数据。今天,我们将一起深入探索这两个库的高级功能,看看它们如何成为数据分析的加速器。
40 1
|
1月前
|
数据挖掘 索引 Python
Python数据分析篇--NumPy--进阶
Python数据分析篇--NumPy--进阶
16 0
|
1月前
|
数据挖掘 索引 Python
Python数据分析篇--NumPy--入门
Python数据分析篇--NumPy--入门
33 0
|
3月前
|
数据采集 数据挖掘 数据处理
Python数据分析:Numpy、Pandas高级
在上一篇博文中,我们介绍了Python数据分析中NumPy和Pandas的基础知识。本文将深入探讨NumPy和Pandas的高级功能,并通过一个综合详细的例子展示这些高级功能的应用。
|
3月前
|
数据采集 数据挖掘 数据处理
Python数据分析:Numpy、Pandas基础
本文详细介绍了 Python 中两个重要的数据分析库 NumPy 和 Pandas 的基础知识,并通过一个综合的示例展示了如何使用这些库进行数据处理和分析。希望通过本篇博文,能更好地理解和掌握 NumPy 和 Pandas 的基本用法,为后续的数据分析工作打下坚实的基础。
|
4月前
|
机器学习/深度学习 并行计算 数据挖掘
🎓PyTorch深度学习入门课:编程小白也能玩转的高级数据分析术
【7月更文挑战第29天】踏入深度学习世界,新手也能用PyTorch解锁高级数据分析。
44 2
|
2月前
|
机器学习/深度学习 数据处理 Python
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
从NumPy到Pandas:轻松转换Python数值库与数据处理利器
76 0
|
3月前
|
机器学习/深度学习 数据处理 计算机视觉
NumPy实践宝典:Python高手教你如何轻松玩转数据处理!
【8月更文挑战第22天】NumPy是Python科学计算的核心库,专长于大型数组与矩阵运算,并提供了丰富的数学函数。首先需安装NumPy (`pip install numpy`)。之后可通过创建数组、索引与切片、执行数学与逻辑运算、变换数组形状及类型、计算统计量和进行矩阵运算等操作来实践学习。NumPy的应用范围广泛,从基础的数据处理到图像处理都能胜任,是数据科学领域的必备工具。
58 0