在跟上一小节最后一部分视频的时候,太困了。趴着睡了会儿。【41:51】第一个视频真长啊。
01数组的计算和数组的计算
老师先介绍了一下在jupyter 中,数组练习。
很快,我也跟上老师的练习,这部分之前在机器学习的课上有涉及到,对于我来说不算很难,所以我把视频加了倍速。
对了,这个“numpy”的发音是 nang π ,前面 matplotlib 发音是【我没留心,等下我去翻翻老师咋读的 mard plo lip】
数组的形状 :
shape
对于数组的转换reshape,展开flatten,形状指定shape。
接着老师讲了一下 t5+2,数组内所有元素都+2
相继进行尝试“t5/2”、“t5/0”结果是虽然警告但是可以运行 和数计算是可以的
同行同列时候,对应位置的元素可以相加减乘除。 和数组计算 需要至少有一个维度一样
那么不同的情况下呢?与相同的维度计算,没有一个维度的话就会报错。
解释一下,就是说,要么有一个维度是一样的,要么有一个长度为1.,可以把这个数组想象成魔方,在一些对多维数据处理过程中很有帮助,比如算平均分啊之类的。练习代码自取:
#%%
#encoding:utf-8
#from ruby in 20190904 19:52
import numpy as np
t1 = np.arange(12)
t1
t1.shape
t4 = np.arange(12)
t4
t4.reshape((3,4))
t5 = np.arange(24).reshape((2,3,4))
t5.reshape((1,24))
# t6 = t5.reshape((t5.shape[0]*t5.shape[1],))
t5.flatten()
t5+2
02numpy的数组的创建
继讲用法后,老师开始介绍为什么要学numpy
一个在Python中做科学计算的基础库,重在数据计算,也是大部分Python科学计算库的基础库,多用于在大型、
多维数组上执行数值运算。
开始上手代码:
print(t3.dtype) 老师的结果显示“int64”我的显示 “int32”,dtype作用为显示数组中 元素的类型。
代码自取:
# encoding:utf-8
# from ruby in 20190905 20:38
import numpy as np
import random
# 使用numpy生成数组,得到ndarray数组的方法
t1 = np.array([1, 2, 3, ])
print(t1)
print(type(t1))
t2 = np.array(range(10))
print(t2)
t3 = np.array(10)
print(t3)
t4 = np.arange(4, 10, 2)
print(t4)
print(t3.dtype)
# 数据类型的指定 dtype= " "
t5 = np.array(range(1, 4), dtype="float32")
print(t5)
print(t5.dtype)
t6 = np.array([1, 1, 0, 1, 1, 0], dtype=bool)
print(t6)
print(t6.dtype)
# numpy中的小数
t7 = np.array([random.random() for i in range(10)])
print(t7)
print(t7.dtype)
t8 = np.round(t7,2)
print(t8)
后面放张运行结果,就开始指定小数位数。
这种方式也可。
好的,numpy的数组相关练习就到这里。