python科学计算库Numpy

提示:文章写完后,目录可以自动生成,如何生成可参考

目录

一、认识Numpy数组对象

二、创建Numpy对像

三  ndarray对象数据类型

总结


用步骤


前言

Numpy作为高性能科学计算和数据分析的基础包,是其他重要数据分析工具的基础,掌握numpy的功能和用法,将有助于后续其他数据分析工具的学习。

一、认识Numpy数组对象

Numpy中最重要的一个特点就是其N维数组对象,即ndarray(别名array)对象,该对象具有失量算术能力和复杂的广播能力,可以执行一些科学计算。不同于python标准库,ndarray对象具有对高维数组的处理能力,这也是数值计算中的缺一不可的重要特征。

ndarray对象中定义了一些重要的属性例如:

ndarray.ndim维度个数,也就是数组轴的个数比如一维,二维等
ndarray.shape数组的维度,表示每个维度上数组的大小
ndarray.size数组元素的总个数,等于shape属性中元组元素的乘积
ndarray.dtype描述数组中元素类型的对象
ndarray,itemsize数组中每个元素的字节大小

注意:ndarray对象中存储元素的类型必须相同。

1.演示ndarray对象的使用

代码如下(示例):

import numpy as np
# 创建一个3行4列的数组
data=np.arange(12).reshape(3,4)
print(data)
# 查看数组的类型
print(type(data))
# 获取数组的维度个数
print(data.ndim)
# 获取数组的维度,输出结果为(3,4),表示3行4列
print(data.shape)
# 数组元素的个数
print(data.size)
# 数组元素的类型
print(data.dtype)

运行结果如下:

       上述示例中 第一行代码使用import.....from 语句导入numpy库,并将其取别名为np,表示后续会用np代替numpy执行操作。

        第2行代码使用arange()和reshape()函数,创建了一个3行4列的数组data,其中arange()函数的功能类似于range()函数,只不过arange()函数生成的是一系列数字元素的数组,reshape()函数的功能是重组数组的行数,列数和维度。

     第4行代码使用type()函数查看了数组的类型,输出结果为numpy.ndarray.

     第5行代码获取了数组的维度个数,返回结果为2,表示二维数组。

     第6行代码获取数组的维度,返回结果为(3,4),表示数组有3行4列。

     第7行代码获取了数组中元素的总个数,返回结果为12,表示数组中一共有12个元素。

     第8行代码获取了元素的具体的类型,返回结果为int32,表示数据类型为int32.

二.创建Numpy数组

      创建ndarray对象的方式有若干种,其中最简单的方式就是使用array()函数,在调用该函数时传入一个python现有的类型即可,比如列表,元组。例如,通过array()函数分别创建一个一维数组和二维数组,具体代码如下。

代码如下(示例):

import numpy as np
# 创建一维数组
data1 = np.array([1,2,3])
print(data1,'\n')
# 创建二维数组
data2=np.array([[1,2,3],[4,5,6],[7,8,9]])
print(data2,'\n')




        除了使用array()函数创建ndarray对象外,还有其他创建数组的方式,具体分为一下几种

(1) 使用zeros()函数创建元素值都为0的数组,示例代码如下:

# 创建一个3行4列元素值都为0的数组
np.zeros((3,4))

(2)通过调用ones()函数创建元素值都为1的数组,示例代码如下:

#  创建一个3行4列元素值都为1的数组
np.ones((3,4))

(3)通过empty()函数创建一个新的数组,该数组只分配了内存空间,它里面填充的元素都是随机的,且数据类型默认为float64,示例代码如下:

np.empty((3,4))

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

创建一个1到20的数组,步长为5
np.arange(1,20,5)

 三.ndarray数据类型

   1.查看数据类型

       如上文所述,通过nddary.dtype可以创建一个表示数据类型的对象,要想获取数据类型的名称,则需要访问name属性来进行获取,示例代码如下:

data_one=np.array([[1,2,3],[4,5,6]])
print(data_one.dtype.name)
# 运行结果为int32

在默认情况下,64为的windows系统输出的结果为int32,64为Linux系统下输出结果为int64.并且在默认情况下,通过zeros(),ones(),empty()函数创建的数组种数据类型为int64.

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复数,分别用两个32位浮点数表示实部和虚部
objectpython对象
string固定长度的字符串类型
unicode固定长度的unicode类型

 

2.转换数据类型 

ndarray对象的数据类型可以通过astype()方法进行转换,示例代码如下:

# 使用astype()函数进行数据类型的转换
data_two=np.array([[1,2,3],[4,5,6]])
print(data_two.dtype)
float_data = data_two.astype(np.float64)
print(float_data.dtype)

# 输出结果为float64


总结


以上就是今天要讲的内容,本文仅仅简单介绍了numpy的使用,而numpy提供了大量能使我们快速便捷地处理数据的函数和方法。这里只是一部分,以后会继续更新。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值