Python numpy简单使用

import numpy as np

NumPy 中定义的最重要的对象是称为 ndarray 的 N 维数组类型。 它描述相同类型的元素集合。 可以使用基于零的索引访问集合中的项目。

ndarray中的每个元素在内存中使用相同大小的块。 ndarray中的每个元素是数据类型对象的对象(称为 dtype)。

从ndarray对象提取的任何元素(通过切片)由一个数组标量类型的 Python 对象表示。

numpy.array(object, dtype = None, copy = True, order = None, subok = False, ndmin = 0)
上面的构造器接受以下参数:

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

一、ndarray 示例:

一维

n = np.array([1,2,3])  
print (n)  
# [1,2,3]

二维

n = np.array([[1, 2],  [3, 4]])
print(n)
#[[1 2]
  [3 4]]

指定最小维度

n = np.array([1,2,3],ndmin=2)
print(n)
# [[1 2 3]]

指定数据类型 dtype

n = np.array([1,  2,  3], dtype = str)
print(n)
# ['1' '2' '3']

NumPy - 数据类型

NumPy 支持比 Python 更多种类的数值类型。 下表显示了 NumPy 中定义的不同标量数据类型。

序号 数据类型及描述
1. bool_ 存储为一个字节的布尔值(真或假)
2. int_ 默认整数,相当于 C 的long,通常为int32或int64
3. intc 相当于 C 的int,通常为int32或int64
4. intp 用于索引的整数,相当于 C 的size_t,通常为int32或int64
5. int8 字节(-128 ~ 127)
6. int16 16 位整数(-32768 ~ 32767)
7. int32 32 位整数(-2147483648 ~ 2147483647)
8. int64 64 位整数(-9223372036854775808 ~ 9223372036854775807)
9. uint8 8 位无符号整数(0 ~ 255)
10. uint16 16 位无符号整数(0 ~ 65535)
11. uint32 32 位无符号整数(0 ~ 4294967295)
12. uint64 64 位无符号整数(0 ~ 18446744073709551615)
13. float_ float64的简写
14. float16 半精度浮点:符号位,5 位指数,10 位尾数
15. float32 单精度浮点:符号位,8 位指数,23 位尾数
16. float64 双精度浮点:符号位,11 位指数,52 位尾数
17. complex_ complex128的简写
18. complex64 复数,由两个 32 位浮点表示(实部和虚部)
19. complex128 复数,由两个 64 位浮点表示(实部和虚部)

每个内建类型都有一个唯一定义它的字符代码:

‘b’:布尔值
‘i’:符号整数
‘u’:无符号整数
‘f’:浮点
‘c’:复数浮点
‘m’:时间间隔
‘M’:日期时间
‘O’:Python 对象
‘S’, ‘a’:字节串
‘U’:Unicode
‘V’:原始数据(void)

二、数据类型对象 (dtype) 示例:

n = np.array(['2',3.6,'88'], dtype = np.int8)
print(n)
# [ 2  3 88]

dt = np.dtype([('age',np.int8)])  
n = np.array([1,  2,  3], dtype = dt)
print(n)
# [(1,) (2,) (3,)]
print(n['age'])
# [1 2 3]

dt = np.dtype([('name','U20'),('age','i1')])
n = np.array([('tom',8),('kangkang','12'),('luxi','9')], dtype = dt)
print(n)
# [('tom',  8) ('kangkang', 12) ('luxi',  9)]

NumPy - 数组属性

三、数组属性 示例

n = np.array([[1,2],[3,4]])  
# 查看维度
print(n.shape)
# (2, 2)

改变维度

n.shape = (4,1)
print(n)
[[1]
 [2]
 [3]
 [4]]

以另一种方法改变维度,又回来了

n = n.reshape(2,2)
print(n)
[[1 2]
 [3 4]]

猜你喜欢

转载自blog.csdn.net/a649344475/article/details/81157697