numpy基础

一、基础知识

1、安装

conda install numpy

2、什么是numpy?
Python中做科学计算的基础库,重在数值计算

二、创建数组

import numpy as np
# 方式一
np.array([1, 2, 3, 4, 5])
# 方式二
np.array(range(5))
# 方式三
np.arange(5)

注意:数组的类型

<class 'numpy.ndarray'>

三、数据类型

1、常见数据类型

类型                     类型代码          说明
int8、uint8              i1、 u1          有符号和无符号的8位整型
int16、unint16           i2、 u2          有符号和无符号的16位整型
int32、unint32           i4、 u4          有符号和无符号的32位整型
int64、unint64           i8、 u8          有符号和无符号的64位整型

float16                 f2               半精度浮点数
float32                 f4或f            单精度浮点数,与C的float兼容
float64                 f8或d            双精度浮点数,与C的double和python的float对象兼容
float128                f16或g           扩展精度浮点数

complex64               c8               32位浮点数表示的复数
complex128              c16              64位浮点数表示的复数
complex256              c32              64位浮点数表示的复数

bool                    ?                存储True和False值的布尔类型

2、查看数据类型

arr3 = np.arange(10)
print(arr3.dtype)

3、指定数据类型

np.array(dtype=数据类型)

例子

arr2 = np.array(range(10), dtype=float)
print(arr2.dtype)
arr2 = np.array(range(10), dtype=bool)
print(arr2.dtype)
print(arr2)

4、修改数据类型

new_arr = arr.astype(类型)

注意:修改数据类型要重新赋值

# 指定数据类型为int64
arr2 = np.array(range(10), dtype=np.int64)
print(arr2.dtype)
print(arr2)
print("=" * 30)
# 修改数据类型为bool
new_arr2 = arr2.astype(bool)
print(new_arr2.dtype)
print(new_arr2)

5、保留固定位数的小数

new_arr = np.round(保留位数)

注意:保留固定位数的小数,是生成新的数组,需要重新赋值

例子

import numpy as np
import random

arr1 = np.array([random.random() for i in range(10)])
arr2 = np.round(arr1, 2)
print(arr2)

三、数组的形状

1、查看数组的shape

import numpy as np

arr1 = np.arange(12)
print(arr1)
# 获取数组的形状
print(arr1.shape)

2、设置数组的shape

import numpy as np

arr1 = np.arange(12)
print(arr1)
# 获取数组的形状
print(arr1.shape)
print('=' * 20)
# 设置数组的形状
arr2 = arr1.reshape((3, 4))
print(arr2)
print(arr2.shape)

3、将数组转换成1维数组

flatten  使...展平

import numpy as np

arr1 = np.arange(12).reshape(3, 4)
print(arr1)
# low方法
arr2 = arr1.reshape(arr1.shape[0] * arr1.shape[1], )
print(arr2)
# 简便方法
arr3 = arr1.flatten()
print(arr3)
原文地址:https://www.cnblogs.com/wt7018/p/11951833.html