神经网络与深度学习——TensorFlow2.0实战(笔记)(五)(NumPy科学计算库<1>python)

多维数组

形状(Shape):

是一个元组,描述数组的维度,以及各个维度的长度。

长度(Length):

某个维度中的元素个数。

 

神经网络与深度学习——TensorFlow2.0实战(笔记)(五)(NumPy科学计算库<1>python)_第1张图片

神经网络与深度学习——TensorFlow2.0实战(笔记)(五)(NumPy科学计算库<1>python)_第2张图片

神经网络与深度学习——TensorFlow2.0实战(笔记)(五)(NumPy科学计算库<1>python)_第3张图片

数字 单门课程成绩 1*课程成绩
一维数组 多门课程成绩 n*课程成绩
二维数组 多个同学多名课程成绩 课程成绩+学生
三位数组 多个班级的多个学生的多门课程成绩 课程成绩+学生+班级
四维数组 多个年纪多个班级的多个学生的多门课程成绩 课程成绩+学生+班级+年纪
五维数组 多个学校多个年纪多个班级的多个学生的多门课程成绩 课程成绩+学生+班级+年纪+学校

NumPy

提供了多维数组、矩阵的常用操作和一些高效的科学计算函数

安装NumPy库

Anaconda:在Anaconda中,已经被安装了NumPy

pip安装:pip install nump(win+r,输入cmd)

导入NumPy库

import numpy as np

from nump import *

数组元素的数据类型

int8、uint8、int16、uint16、int32、uint32、int64、uint64

float16、float32、float64、float128

complex64、complex128、complex256

bool、object、string_、unicode

创建数组

array([列表]/(元组), dtype=数据类型)

import numpy as np
#创建数组
#NumPy要求数组中所有元素的数据类型必须是一致的
a=np.array([0,1,2,3,4],dtype=np.int64)#占用新的内存
b=np.array([0,1,2,3,4])
print(a)
#输出指定的数组元素
print(a[0])

数组的属性

print(a.ndim)#数组维数
print(a.shape)#数组形状描述数组的维度,以及各个维度内部的元素个数
print(a.size)#数组元素的总个数
print(a.dtype)#数组元素的数据类型
print(a.itemsize)#数组中每个元素的字节数

神经网络与深度学习——TensorFlow2.0实战(笔记)(五)(NumPy科学计算库<1>python)_第4张图片

二维数组:

#二维数组
c=np.array([[1,2,3],[4,5,6],[7,8,9]])
print(c.ndim)#数组维数
print(c.shape)#数组形状描述数组的维度,以及各个维度内部的元素个数
print(c.size)#数组元素的总个数
print(c.dtype)#数组元素的数据类型
print(c.itemsize)#数组中每个元素的字节数
print(c[0])
print(c[0].ndim)#数组维数
print(c[0].shape)#数组形状描述数组的维度,以及各个维度内部的元素个数
print(c[0].size)#数组元素的总个数
print(c[0].dtype)#数组元素的数据类型
print(c[0].itemsize)#数组中每个元素的字节数

神经网络与深度学习——TensorFlow2.0实战(笔记)(五)(NumPy科学计算库<1>python)_第5张图片

三维数组

#三维数组
d=np.array([[[0,1],[2,3]],[[4,5],[6,7]],[[8,9],[10,11]]])
print("d:",d.ndim)#数组维数
print("d:",d.shape)#数组形状描述数组的维度,以及各个维度内部的元素个数
print("d:",d.size)#数组元素的总个数
print("d:",d.dtype)#数组元素的数据类型
print("d:",d.itemsize)#数组中每个元素的字节数
print(d[0])
print("d[0]:",d[0].ndim)#数组维数
print("d[0]:",d[0].shape)#数组形状描述数组的维度,以及各个维度内部的元素个数
print("d[0]:",d[0].size)#数组元素的总个数
print("d[0]:",d[0].dtype)#数组元素的数据类型
print("d[0]:",d[0].itemsize)#数组中每个元素的字节数
print(d[0][0])
print("d[0][0]:",d[0][0].ndim)#数组维数
print("d[0][0]:",d[0][0].shape)#数组形状描述数组的维度,以及各个维度内部的元素个数
print("d[0][0]:",d[0][0].size)#数组元素的总个数
print("d[0][0]:",d[0][0].dtype)#数组元素的数据类型
print("d[0][0]:",d[0][0].itemsize)#数组中每个元素的字节数

神经网络与深度学习——TensorFlow2.0实战(笔记)(五)(NumPy科学计算库<1>python)_第6张图片

创建特殊的数组

#创建数字序列数组(起始数字,结束数字,步长,dtype)
# 起始数字可以省略, 默认从0开始,步长省略默认从1开始
print(np.arange(4))
print(np.arange(0,2,0.3))
#创建全1数组(shape,dtype)
onelist = np.ones((3,2))
print(onelist)
#创建全0数组(shape,dtype)
print(np.zeros((3,2)))
#创建单位数组(行数,列数,dtype)
print(np.eye(3))
print(np.eye(3,2))
#创建等差数组(起始数字,结束数字,元素个数,元素数据类型)
print(np.linspace(1,10,10))
#创建等比数组(起始指数,结束指数,元素个数,基数,元素数据类型)
print(np.logspace(1,5,5,base=2))
#将列表或元组转化为numpy数组对象,不会占用新的内存
onelistasarray = np.asarray(onelist)
print("onelistasarray\n",onelistasarray)
#array()会复制出一个副本,占用新的内存
onelistarray =np.array(onelist)
print("onelistarray\n",onelistarray)
onelist[0][0]=9
print("onelist变\n",onelist)
print("onelistasarray变\n",onelistasarray)
print("onelistarray变\n",onelistarray)

神经网络与深度学习——TensorFlow2.0实战(笔记)(五)(NumPy科学计算库<1>python)_第7张图片

你可能感兴趣的:(python,python,numpy)