科学计算库NumPy

一、认识NumPy数组对象

NumPy中最重要的一个特点就是其N维数组对象,即ndarray(别名array)对象,该对象可以执行一些科学计算。

属性具体说明
ndarray.ndim维度个数,也就是数组轴的个数,比如一维、二维、三维等
ndarray.shape数组的维度。这是一个整数的元组,标识每个维度上数组的大小。例如,一个n行和m列的数组,它的shape属性为(n,m)
ndarray.size数组元素的总个数,等于shape属性中元组元素的乘积
ndarray.dtype描述数组中元素类型的对象,既可以使用标准的Python类型创建或指定,也可以使用NumPy特有的数据类型来指定,比如numpy.int32、numpy.float64等
ndarray.itemsize数组中每个元素的字节大小。例如,元素类型为float64的数组有8(64/8)个字节,这相当于ndarray.dype.itemsize

二、创建NumPy数组

简单创建ndarray对象的方式是使用array()函数,在调用该函数时传入一个列表或者组。

# 创建一个一维数组

data1 = np.array([1, 2, 3])

# 创建一个二维数组

data2 = np.array([[1, 2, 3], [4, 5, 6]])

 通过zeros()函数创建元素值都是0的数ones()函数创建元素值都为1的数组

# 创建元素值全是0的数组

np.zeros((3, 4))

# 创建元素值全是1的数组

np.ones((3, 4))

 通过empty()函数创建一个新的数组,该数组只分配了内存空间,它里面填充的元素都是随机的

# 创建元素值全是随机数的数组

np.empty((5, 2))

 通过arange()函数可以创建一个等差数组,它的功能类似于range(),只不过arange()函数返回的结果是数组,而不是列表。

np.arange(1, 20, 5)

三、ndarray对象的数据类型

查看数据类型

ndarray.dtype以创建一个表示数据类型的对,如果希望取数据类型的名称,则需要访问name属性进行获

data_one = np.array([[1, 2, 3], [4, 5, 6]])

data_one.dtype.name 

 NumPy的数据类型是由一个类型名和元素位长的数字组成。

zeros() ones() empty() 函数创建的数 ,默认的 据类型为 float64
默认情况下,64 windows 系统输出的结果为 int32 64 Linux macOS 系统输出结果为 int64 ,当然也可以通过 dtype 来指定数据类型的长度

 NumPy中常用的数据类型

数据类型含义

bool

布尔类型,值为True或者False
int8、uint8有符号和无符号的8位整数
int16、uint16有符号和无符号的16位整数
int32、uint32有符号和无符号的32位整数
int64、uint64有符号和无符号的64位整数
float16半精度浮点数(16位)
float32半精度浮点数(32位)
float64半精度浮点数(64位)
complex64复数,分别用两个32位浮点数表示实部和虚部
complex128复数,分别用两个64位浮点数表示实部和虚部
objectPython对象
string_固定长度的字符串类型
Unicode固定长度的Unicode类型

每一个NumPy内置的数据类型都有一个特征码,它能唯一标识一种数据类

特征码含义
b布尔型
u无符号整型
c

复数类型

S,a字节字符串
V

原始数据

i有符号整型
f浮点型
OPython对象
UUnicode字符串

 转换数据类型

ndarray对象的数据类型可以通过astype()方法进行转

data = np.array([[1, 2, 3], [4, 5, 6]])

data.dtype

# 数据类型转换为float64

float_data = data.astype(np.float64)

float_data.dtype

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值