文本大数据之NumPy基础

初识Nmupy

NumPy是一个开源的Python科学计算库。它的主要功能之一是用来操作数组和矩阵;是科学计算、深度学习等高端领域的必备工具;使用TensorFlow、Caffe框架训练神经网络模型时,需要进行大量复杂的运算,可以直接调用NumPy里面的API。NumPy还包含了很多使用的数学函数,覆盖了很多的数学领域,比如线性代数、傅里叶变换、随机数生成。

NumPy基础

NumPy对象

在NumPy里,ndarray是整个numpy的基础,ndarray是N-dimensional array的缩写,是一种由同质元素组成的多维数组。元素数量是事先准备好的,同质指的是所有的元素类型一致。
它描述相同类型的元素集合。 可以使用基于零的索引访问集合中的项目。
ndarray中的每个元素在内存中使用相同大小的块。
ndarray中的每个元素是数据类型对象的对象(称为 dtype)。
从ndarray对象提取的任何元素(通过切片)由一个数组标量类型的 Python 对象表示。
基本的Nmupy中的数组函数创建的如下:

numpy.array

它从任何暴露数组接口的对象,或从返回数组的任何方法创建一个ndarray

numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
参数 描述
object 任何暴露数组接口方法的对象都会返回一个数组或任何(嵌套)序列
dtype 数组的所需数据类型
copy 默认为true,对象是否被复制
order C(按行)、F(按列)或A(任意,默认)。
subok 默认情况下,返回的数组被强制为基类数组。 如果为true,则返回子类
ndimin 指定返回数组的最小维数

示例代码

import numpy as py

a = [1,2,3,4,5,6,7,8,9]
print(a)
#结果如下
#[1,2,3,4,5,6,7,8,9]

a * 2
#结果如下
#[1,2,3,4,5,6,7,8,9,1,2,3,4,5,6,7,8,9]

print(type(a)
#结果如下
#<class 'list>
#把普通python中的list转换成ndarray
A = np.array(a)
print(A)
A
#print(A)结果如下
#[1,2,3,4,5,6,7,8,9]
#A结果如下
#array([1,2,3,4,5,6,7,8,9])

print(type(A))
#结果如下
#<class 'numpy.ndarray'>

A * 2
#结果如下
#array([2,4,6,8,10,12,14,16,18])
#直接创建一维数组
b = np.array([1,2,3,4,5])
print(b)
print(type(b))
#print(b)结果如下
#[1 2 3 4 5]
#print(type(b))结果如下
#<class 'numpy.ndarray'>

b * 6
#结果如下
#array([6,12,18,24,30])

NumPy数据类型

ndarray数据类型由一个叫dtype的numpy对象指定,每个ndarray只有一种dtype类型。数据类型对象描述了对应于数组的固定内存块的解释,取决于以下方面:

1.数据类型(整数、浮点或者 Python 对象)
2.数据大小
3.字节序(小端或大端)
4.在结构化类型的情况下,字段的名称,每个字段的数据类型,和每个字段占用的内存块部分。
5.如果数据类型是子序列,它的形状和数据类型。

字节顺序取决于数据类型的前缀<或>。<意味着编码是小端(最小有效字节存储在最小地址中)。>意味着编码是大端(最大有效字节存储在最小地址中)。

NumPy数组属性

属性 描述
ndarry.shape 这一数组属性返回一个包含数组维度的元组,它也可以用于调整数组大小
ndarray.ndim 这一数组属性返回数组的维数
ndarray.itemsize 数组中每个元素的字节大小
ndarray.size 数组元素的总个数
ndarray.dtype 数组元素的数据类型,dtype类型可以用于创建数组中
ndarray.data 包含实际数组元素的缓冲区地址
ndarray.flat 数组元素的迭代器

数组的维数和
示例1如下

import numpy as np
a = np.array([[1,2,3],[4,5,6]])
print(a.shape)

输出如下:

(2,3)

示例2如下

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值