科学计算库——Numpy(1)

目录

2.1数组对象

2.2创建数组

1、根据python现有数据类型创建数组

        一维数组

         二维数组、三维数组

2、根据指定数值创建数组

zeros()函数 元素值为0的数组;  ones()函数 元素值为1的数组;  empty()函数 元素值为随机数的数组

3、根据指定数值范围创建数组

NumPy中使用arange()函数创建基于指定区间均匀分布数值的数组arange()函数的功能类似于python中的range()函数,但是arange()返回一维数组,而非列表

range()函数可以搭配reshape()方法使用,以重塑一维数组的形状。reshape()方法用于改变数组的形状,但不会改变数组的形状

2.3访问数组元素

2.3.1使用整数索引访问元素

创建一个一维数组,获取索引为2的元素

创建一个二维数组,获取索引为1的一行元素

二维数组【行索引,列索引】创建一个二维数组,获取行索引为1、列索引为2的元素

2.3.2 使用话是索引或布尔索引访问元素

1、花式索引

创建一个一维数组,访问索引为【2,5,8】的元素

创建一个二维数组,使用花式索引获取该数组的多行元素

2、布尔索引

创建一个二维数组,获取该数组中值大于5的数组


2.1数组对象

ndarray对象中定义的部分常有属性及其说明
属性说明
ndim数组的维度
shape数组中各维度的大小
size数组中元素的总数量
dtype数组中元素的类型
itemsize数组中各元素的字节大小

2.2创建数组

1、根据python现有数据类型创建数组

        一维数组

# 导入numpy库
import numpy as np
# 基于列表创建一维数组
array=np.array([1,2,3,])
print(array)
[1 2 3]

         二维数组、三维数组

import numpy as np
# 基于嵌套列表创建一个二维数组
array_1 = np.array([[1,2,3],[4,5,6]])
print(array_1)
print('------------')

list_1 = [1,2,3]
list_2 = [4,5,6]
# 基于嵌套列表创建一个三维数组
array_3 = np.array([[list_1,list_2],[list_1,list_2]])
print(array_3)
[[1 2 3]
 [4 5 6]]
------------
[[[1 2 3]
  [4 5 6]]

 [[1 2 3]
  [4 5 6]]]

2、根据指定数值创建数组

zeros()函数 元素值为0的数组;  ones()函数 元素值为1的数组;  empty()函数 元素值为随机数的数组

# zeros()函数 元素值为0的数组;  ones()函数 元素值为1的数组;  empty()函数 元素值为随机数的数组
# 函数语法格式如下
# zeros(shape,dtype=float,order='C')
# ones(shape,dtype=None,order='C')
# empty(shape,dtype=float,order='C')

# zeros()函数
# 创建一个形状为(2,3)、元素值为0的数组
array_demo = np.zeros((2,3))
print(array_demo)
[[0. 0. 0.]
 [0. 0. 0.]]
# ones()函数
# 创建一个形状为(2,3)、元素值为1的数组
array_demo = np.ones((2,3))
print(array_demo)
[[1. 1. 1.]
 [1. 1. 1.]]
import numpy as np
# empty()函数
# 创建一个形状为(3,3)、元素为随机数的数组
arr_demo = np.empty((3,3))
print(arr_demo)
[[4.67296746e-307 1.69121096e-306 9.45702226e-308]
 [1.89146896e-307 7.56571288e-307 3.11525958e-307]
 [1.24610723e-306 1.29061142e-306 5.53353523e-322]]

3、根据指定数值范围创建数组

NumPy中使用arange()函数创建基于指定区间均匀分布数值的数组
arange()函数的功能类似于python中的range()函数,但是arange()返回一维数组,而非列表

# 创建一个元素值位于[1,30]且间隔为5的数组
array_demo = np.arange(1,30,5)
print(array_demo)
[ 1  6 11 16 21 26]

range()函数可以搭配reshape()方法使用,以重塑一维数组的形状。
reshape()方法用于改变数组的形状,但不会改变数组的形状

# 重塑为2行3列的二维数组
new_arr = array_demo.reshape(2,3)
print(new_arr)
[[ 1  6 11]
 [16 21 26]]

2.3访问数组元素

2.3.1使用整数索引访问元素

创建一个一维数组,获取索引为2的元素

import numpy as np
arr = np.arange(1,7)
print(arr)
print(arr[2])
[1 2 3 4 5 6]
3

创建一个二维数组,获取索引为1的一行元素

import numpy as np
arr_1 = np.arange(1,7).reshape(2,3)
print(arr_1)
print("---------------")
print(arr_1[1])
[[1 2 3]
 [4 5 6]]
---------------
[4 5 6]

二维数组【行索引,列索引】
创建一个二维数组,获取行索引为1、列索引为2的元素

import numpy as np
arr_1 = np.arange(1,7).reshape(2,3)
print(arr_1)
print("---------------")
print(arr_1[1,2])
[[1 2 3]
 [4 5 6]]
---------------
6

2.3.2 使用话是索引或布尔索引访问元素


1、花式索引

创建一个一维数组,访问索引为【2,5,8】的元素

import numpy as np
arr_2 = np.arange(1,10)
print(arr_2)
print('--------------')
print(arr_2[[2,5,8]])
[1 2 3 4 5 6 7 8 9]
--------------
[3 6 9]

创建一个二维数组,使用花式索引获取该数组的多行元素

arr_3 = np.arange(1,10).reshape((3,3))
print(arr_3)
print('--------------')
# 访问索引为【0,2】的元素
print(arr_3[[0,2]])
[[1 2 3]
 [4 5 6]
 [7 8 9]]
--------------
[[1 2 3]
 [7 8 9]
# 创建一个二维数组
arr_3 = np.arange(1,10).reshape((3,3))
print(arr_3)
print('--------------')
# 使用花式索引访问元素
print(arr_3[[0,2],[1,1]]) # 0行 2行,1列 1列
print(arr_3[[0,2],[0,2]]) # 0行 2行,0列 2列
[[1 2 3]
 [4 5 6]
 [7 8 9]]
--------------
[2 8]
[1 9]

2、布尔索引

创建一个二维数组,获取该数组中值大于5的数组

arr_d = np.arange(1,10).reshape((3,3))
print(arr_d)
print('------------')
# 使用布尔索引访问元素
print(arr_d > 5)
print('-------------')
print(arr_d[arr_d > 5])
[[1 2 3]
 [4 5 6]
 [7 8 9]]
------------
[[False False False]
 [False False  True]
 [ True  True  True]]
-------------
[6 7 8 9]
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值