Numpy入门

了解更多关注微信公众号“木下学Python”吧~

 

 

 

目录

有五个基本属性

元素类型

数组创建和变换

数组的类型变换

在创建数组代码

多维数组操作

数组的索引与切片

数组的运算


 

 


有五个基本属性

例如

 

 

元素类型

 

 

数组创建和变换

shape,从外到内表示维度

例子

In[51]:范围1-10,生成四个,默认都是浮点数

In[53]:endpoint 表示生成范围不包含10,范围1-9

In[57]:合并a,b

 

 

数组的类型变换

例子

 

 

在创建数组代码

import numpy as np

#从现有列表创建数组
List = [1,2,3,4]
Arr = np.array([1,2,3,4])

#数组创建
arr = np.zeros(5,dtype=float)
print(arr)
#>>>[0. 0. 0. 0. 0.] 创建浮点数类型全为0的数组

arr = np.zeros(3,dtype=int)
print(arr)
#>>>[0 0 0] 创建整数类型的值全为0的数组

arr = np.ones(5)
print(arr)
#>>>[1. 1. 1. 1. 1.] 创建值全为1的数组

#以任意值初始化的数组,创建空数组,再使用fill方法将想要的值放入数组中
arr = np.empty(4) #产生的都是空值
arr.fill(5.5) #填充值为5.5
print(arr)
#>>>[5.5 5.5 5.5 5.5]

#创建随机数字数组,例如生成一个均值为0和方差为1的5个随机样本数组
arr = np.random.randn(5)
print(arr)
#>>>[-1.07368396  0.0204466  -0.28986696  1.47662182  0.05650499]

#以现有列表初始化一个二维数组
List = [[1,2],[3,4]]
arr = np.array(List)
print(arr)
#>>>[[1 2]
#    [3 4]]

 

 

多维数组操作

import numpy as np

#以现有列表初始化一个二维数组
List = [[1,2],[3,4]]
arr = np.array(List)

#取数组和列表的同一个元素
print(List[0][1])
print(arr[0,1])

#返回2行3列的array,且值均为0
print(np.zeros((2,3)))

#返回2行4列的array,且值均为10,标准差为3的正态分布的随机数
print(np.random.normal(10,3,(2,4)))

#把一维数组改成2×4数组
arr = np.array([0,1,2,3,4,5,6,7])
arr = np.arange(8).reshape(2,4)
print(arr)
#切片
print(arr[1,2:3]) #返回第二行,第三列值
print(arr[:,2]) #返回第三列所有值
print(arr[1][2:3]) #返回第二行,第三列值
#>>>[6]
#>>>[2 6]
#>>>[6]

#数组类型,大小,维数,形状,字节
print(arr.dtype)
print(arr.size)
print(arr.ndim)
print(arr.shape)
print(arr.nbytes)
#>>>int32
#   8
#   2
#   (2, 4)
#   32

#数组最大最小,和,乘,平均,方差
print(arr.min(),arr.max())
print(arr.sum(),arr.prod())
print(arr.mean(),arr.std())
#>>>0 7
#   28 0
#   3.5 2.29128784747792

#沿着一个维度计算
print(arr.sum(axis=1)) #一行一行的加起来的和
print(arr.sum(axis=0)) #一列一列的加起来的和
#>>>[ 6 22]
#   [ 4  6  8 10]

#转置
print(arr.T)
#>>>[[0 4]
#   [1 5]
#   [2 6]
#   [3 7]]

 

 

数组的索引与切片

 

 

数组的运算

ceiling:不超过元素x的整数值

floor:小于元素x的最大值

 

例子

就是操作后又返回值

 

 

例子

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

### NumPy 基础入门 #### 导入 NumPy 包 为了使用 NumPy 的功能,首先需要导入该库。通常情况下,会将其重命名为 `np` 以便于后续调用。 ```python import numpy as np ``` 这使得可以在整个程序中通过前缀 `np.` 来访问 NumPy 提供的各种函数和对象[^1]。 #### 创建 NumPy 数组 NumPy 中最基本的数据结构是 ndarray (n-dimensional array),即多维数组。可以通过多种方式来创建这些数组: - **从 Python 列表转换** 可以直接利用现有的列表数据构建 NumPy 数组 ```python list_data = [1, 2, 3] np_array = np.array(list_data) ``` - **内置函数生成** 使用特定模式自动生成数值序列或特殊矩阵 ```python # arange 函数用于生成等差数列并自动形成一维数组 sequence = np.arange(0, 10, 2) # 起始值为0,结束值小于10,步长为2 print(sequence) # reshape 方法可以改变现有数组的形状而不修改其内容 reshaped_sequence = sequence.reshape((2, -1)) print(reshaped_sequence) ``` 上述例子展示了如何创建一个简单的二维数组,并对其进行重塑操作[^2]。 #### 多维数组的操作 对于更复杂的场景,比如处理图像或其他形式的网格化数据时,可能需要用到更高维度的数组。下面的例子演示了基于条件筛选子集的方法: ```python x = np.arange(16).reshape((4, -1)) filtered_x = x[x[:, 3] % 3 == 0] print(filtered_x) ``` 这里先创建了一个四行四列的整型数组,接着根据第三列元素能否被三整除作为过滤条件获取符合条件的行向量集合[^3]。 #### 文件存取支持 除了内存中的计算外,有时还需要将 ndarrays 存储至磁盘或者加载已有的二进制文件。为此,提供了简便易用的 I/O 接口: ```python # 将数组保存成 .npy 格式的文件 file_path = 'example.npy' data_to_save = np.random.rand(5, 5) np.save(file=file_path, arr=data_to_save) # 加载之前保存过的 .npy 文件回到内存中 loaded_data = np.load(file_path) print(loaded_data) ``` 此过程不仅简化了持久化的流程,而且保持了原始数据类型的完整性[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值