eye()函数生成个单位矩阵似的,括号中的参数是几阶单位矩阵
# from numpy import *
# print(eye(4)) # 单位矩阵的味道
本案例代码均来自菜鸟教程
NumPy最重要的一个特点就是N为数组对象ndarray
他有3种特征
ndarray 对象是用于存放同类型元素的多维数组。
ndarray 中的每个元素在内存中都有相同存储大小的区域。
ndarray 内部由以下内容组成:
-
一个指向数据(内存或内存映射文件中的一块数据)的指针。
-
数据类型或 dtype,描述在数组中的固定大小值的格子。
-
一个表示数组形状(shape)的元组,表示各维度大小的元组。
-
一个跨度元组(stride),其中的整数指的是为了前进到当前维度下一个元素需要"跨过"的字节数。
import numpy as np
# 一个维度
a = np.array([1,2,3])
print(a)
# 多个维度
# TypeError: Field elements must be 2- or 3-tuples, got '3'
# b = np.array([1,2],[3,4])
b = np.array([[1,2],[3,4]]) # 格式是([])圆括号,大括号
print(b)
# 最小维度
c = np.array([1,2,3,4,5],ndmin=1)# ndmin代表有几个[]大括号
print(c)
numpy支持的数据类型有很多,可以和C相比
数据类型对象dtype构造语法如下
numpy.dtype(object,align,copy)
object-要转化为的数据类型对象
align-如果为true,填充字段使其类似C的结构体
copy-复制 dtype对象,如果为false,则是对内置数据类型对象的引用
# int8,int16,int32,int64四种数据类型可以使用字符串'l1','l2','l3','l4'代替
dt = np.dtype('i4')
print(dt) # int32
# 使用标量类型
dt1 = np.dtype(np.int32)
print(dt1)
# 字节顺序标注
dt2 = np.dtype('<i4')
print(dt2)
# 结构化数据类型的使用
# 类型字段和对应的实际类型将被创建
dt3 = np.dtype([('age',np.int8)])
print(dt3)
print('
')
# 将数据类型应用于 ndarray对象
dt4 = np.dtype([('age',np.int8)])
a4 = np.array([(10,),(20,),(30,)],dtype=dt4)
print(a4)
print(type(a4))
# # 类型字段名可以用于存取实际的 age 列
print(a4['age'])
# 下面的示例定义一个结构化数据类型 student,
# 包含字符串字段 name,整数字段 age,及浮点字段 marks,并将这个 dtype 应用到 ndarray 对象。
student = np.dtype([('name','S20'), ('age', 'i1'), ('marks', 'f4')])
print(student)