目录
前传
由于,某人在上智能相关课程的时候,总想着一大堆的事情,统计股市涨跌,行业关联度等。
所以,为了不挂科,还是总结一些东西会比较好。
好啦,现在要开始了。
我们先要引入numpy。
import numpy as np
直接创建数组
就只是创建数组
1. np.array()
通过list
创建数组,这里要用到np.array()
按照官方的语法,如下:
np.array(object, dtype=None, *, copy=True,
order='K', subok=False, ndmin=0, like=None)
我觉得有一些可以解释一下:
- object:列表类型的东西
- dtype:想要的数据类型
- copy:是否可以复制
- ndmin:维度
a = np.array([1, 2, 3])
# array([1, 2, 3])
当然,也可以这样
ar = [1, 2, 4]
a = np.array(ar)
# array([1, 2, 4])
这也是可行的。
2. np.arange()
这个函数类似于Python原生的range()
,所以,就存在两种形式:
np.arange(n)
:直接生成从0
~n-1
的数组np.arange(begin, end)
:直接生成从begin
~end-1
的数组
此外,还有一种创建方式:np.arange(begin, end).reshape(n, m, …, k)
,这可以reshape
到你想要的形状。
譬如:
a = np.arange(9).reshape(3,3) # 创建一个`3*3`的矩阵
b = np.arange(8).reshape(2,2,2) # 创建一个`2*2*2`的矩阵
如果要定义类型,就直接这样做:
np.arange(n, dtype='float64')
(更多数据类型见“定义数据类型”)
3. np.ones()
这个是创建一个全部都是1
的数组(矩阵)的函数
按照python的help函数的解释是
np.ones(shape, dtype=None, order='C', *, like=None)
实际上要在意的是,以下的部分:
np.ones(shape, dtype=None)
4. numpy.ones_like()
创建一个像某个给定要创建相同形状的数组一样的全是1
的数组。
5. np.zeros()
这个是创建一个全部都是0
的数组(矩阵)的函数
np.zeros(shape, dtype=float, order='C', *, like=None)
肯定的是,值得关注的还是以下的部分:
np.zeros(shape, dtype=None)
6. numpy.zeros_like()
创建一个像某个给定要创建相同形状的数组一样的全是0
的数组。
定义数据类型
我们可以通过array
函数里面的dtype
形参来定义,如下
ar = [1, 2, 4]
a = np.array(ar, dtype='float64')
# array([1., 2., 4.])
上面的代码表示的是创建float64
类型的ndarray
除了float64
之外,常见的数值数据类型还有:
int:整数数据类型,表示整数值,可以使用不同的位数,如
int8
、int16
、int32
、int64
等。uint:无符号整数数据类型,表示非负整数值,也可以使用不同的位数,如
uint8
、uint16
、uint32
、uint64
等。complex:复数数据类型,表示复数值,可以使用不同的精度,如
complex64
(由两个32位浮点数组成)、complex128
(由两个64位浮点数组成)等。bool:布尔数据类型,表示布尔值,只能取
True
或False
两个值。byte、rune:这两个类型实际上是uint8和int32的别名,分别用于表示
ASCII
字符和Unicode
字符的值。
参考资料
暂无参考资料