人工智能学习笔记 - 初级篇Ⅰ - Python基础 - 第9节 - Numpy基础

在本节课中,我们将学习 NumPy,这是一个用于科学计算的 Python 库,它提供了一个强大的对象数组以及一系列处理数组的函数。

ndarray 介绍

NumPy 的核心功能之一是 ndarray 对象,它表示一个多维的数组。

ndarray 的属性

ndarray 对象有多个属性,如 shape(形状)、dtype(数据类型)、size(大小)等。

import numpy as np

a = np.array([1, 2, 3])
print(a.shape)  # 输出: (3,)
print(a.dtype)  # 输出: int64
print(a.size)   # 输出: 3

ndarray 的类型

NumPy 支持比 Python 更多的数值类型,如 int32、int64、float32、float64 等。

基本操作

生成元素值为 0 和 1 的数组的方法
zeros_array = np.zeros((2, 3))  # 创建一个 2x3 的全 0 数组
ones_array = np.ones((3, 2))    # 创建一个 3x2 的全 1 数组
从现有数组生成
existing_array = np.array([1, 2, 3])
new_array = np.array(existing_array)  # 从现有数组创建新数组
生成固定范围的数组
range_array = np.arange(10)  # 创建一个包含 0 到 9 的数组
形状修改
original_array = np.arange(6)
reshaped_array = original_array.reshape((2, 3))  # 将数组重塑为 2x3 的形状
类型修改
int_array = np.array([1, 2, 3])
float_array = int_array.astype(np.float64)  # 将数组的类型修改为 float64

数组去重

duplicated_array = np.array([1, 2, 2, 3, 3, 3])
unique_array = np.unique(duplicated_array)  # 去重

数组运算

NumPy 支持数组间的加、减、乘、除等基本运算,以及更复杂的数学运算。

import numpy as np

# 创建两个数组
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])

# 数组加法
print(a + b)  # 输出: [5 7 9]

# 数组乘法(元素对元素)
print(a * b)  # 输出: [ 4 10 18]

矩阵

NumPy 提供了 matrix 对象,专门用于矩阵运算。

import numpy as np

# 创建矩阵
A = np.matrix([[1, 2], [3, 4]])
B = np.matrix([[5, 6], [7, 8]])

# 矩阵乘法
print(A * B)

统计函数

NumPy 提供了一系列统计函数,如 mean(平均值)、std(标准差)、sum(求和)等。

import numpy as np

data = np.array([1, 2, 3, 4, 5])

# 平均值
print(np.mean(data))  # 输出: 3.0

# 标准差
print(np.std(data))  # 输出: 1.4142135623730951

比较和逻辑函数

NumPy 支持数组间的比较操作(如 >、< 等)和逻辑操作(如 logical_and、logical_or 等)。

import numpy as np

a = np.array([1, 2, 3])
b = np.array([3, 2, 1])

# 比较
print(a > b)  # 输出: [False False  True]

# 逻辑与
print(np.logical_and(a > 1, b < 3))  # 输出: [False  True False]

IO 操作

NumPy 支持从文件读取数组和将数组写入文件。

import numpy as np

# 保存数组到文件
data = np.array([1, 2, 3, 4, 5])
np.save('data.npy', data)

# 从文件加载数组
loaded_data = np.load('data.npy')
print(loaded_data)  # 输出: [1 2 3 4 5]

通过本节课的学习,你应该对 Numpy 有了基本的了解,包括它的核心概念 ndarray、数组的创建和操作、以及如何进行数组的数学和统计分析。NumPy 是 Python 科学计算的基础,掌握它对于进行更高级的数据分析和机器学习任务至关重要。

最后

欢迎关注我的微信公众号, 一起交流学习!!!

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

御风之

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值