【NumPy】NumPy实战

原文:https://www.dataquest.io/blog/numpy-cheat-sheet/

NumPy的参考文档和手册:https://docs.scipy.org/doc/

NumPy是使Python能够快速处理数据的库。最初于1995年以“Numeric”推出的NumPy是构建许多重要的Python数据科学库的基础,包括Pandas,SciPy和scikit-learn。

本文中,我们使用以下简写:
arr
: 一个NumPy数组对象

您还需要导入numpy才能开始使用:

import numpy as np


实战

导入/导出

np.loadtxt('file.txt')| 从文本文件
np.genfromtxt('file.csv',delimiter=',')| 从CSV文件
np.savetxt('file.txt',arr,delimiter=' ')| 写入文本文件
np.savetxt('file.csv',arr,delimiter=',')| 写入CSV文件


创建数组

np.array([1,2,3])| 一维数组
np.array([(1,2,3),(4,5,6)])| | 二维数组
np.zeros(3)| | 1D数组长度的3所有值0
np.ones((3,4))| 包含所有值的3x 4数组1
np.eye(5)| | 5X 5的阵列0与1上对角(单位矩阵)
np.linspace(0,100,6)| 6从| 0到100
np.arange(0,10,3)| 的均匀分割值的数组 从步长(例如)| 0到小于数值的数组 包含所有值的x 数组| | X 之间的随机浮标阵列- | X 之间的随机浮标阵列- | 随机整数之间的x 数组-103[0,3,6,9]
np.full((2,3),8)238
np.random.rand(4,5)4501
np.random.rand(6,7)*100670100
np.random.randint(5,size=(2,3))2304


检查属性

arr.size| 返回arr
arr.shape|中的元素数 返回arr(行,列)
arr.dtype|的维度 返回arr
arr.astype(dtype)|中的元素类型 将arr元素转换为类型dtype
arr.tolist()| 转换arr为Python列表
np.info(np.eye)| 查看文档np.eye


复制/排序/整形

np.copy(arr)| 复制arr到新的记忆
arr.view(dtype)| 创建arr类型为dtype
arr.sort()| 的元素的视图 排序arr
arr.sort(axis=0)| 排序arr
two_d_arr.flatten()|的特定轴 将二维数组展平two_d_arr为1D 
arr.T| 转置arr(行成为列,反之亦然)
arr.reshape(3,4)| 重塑arr到3行,4列而不更改数据
arr.resize((5,6))| 将arr形状更改为5x 6并使用填充新值0


添加/删除元素

np.append(arr,values)| 将值附加到arr
np.insert(arr,2,values)|的末尾 将值插入到arr索引2
np.delete(arr,3,axis=0)| 之前 删除|的索引上3的行 arr
np.delete(arr,4,axis=1)在指数删除列4的arr


合成/分离

np.concatenate((arr1,arr2),axis=0)| 将arr2行添加到arr1
np.concatenate((arr1,arr2),axis=1)| 的末尾 arr2作为列添加到arr1
np.split(arr,3)|的末尾 分割arr成3子数组
np.hsplit(arr,5)| | arr在5索引上水平分割


索引/切片/子集

arr[5]| 返回index元素5
arr[2,5]| 返回索引[2][5]
arr[1]=4| 上的二维数组元素 在索引1值4
arr[1,3]=10| 上指定数组元素 在索引[1][3]值10
arr[0:3]| 上指定数组元素 返回索引处的元素0,1,2(在二维数组上:返回行0,1,2)
arr[0:3,4]| 返回的行中的元素0,1,2在列4
arr[:2]| 返回索引处的元素0,1(在二维数组上:返回行0,1)
arr[:,1]| 返回1所有行
arr<5| 上索引处的元素 返回一个带有布尔值
(arr1<3) & (arr2>5)| 的数组 返回一个带有布尔值
~arr| 的数组 反转布尔数组
arr[arr<5]| | 返回小于的数组元素5


标量数学

np.add(arr,1)| 添加1到每个数组元素
np.subtract(arr,2)| 2从每个数组元素减去
np.multiply(arr,3)| 用3
np.divide(arr,4)| 将每个数组元素相乘 将每个数组元素除以4(除以np.nan零的返回值)
np.power(arr,5)| 提高每个数组元素的5权力


矢量数学

np.add(arr1,arr2)| Elementwise添加arr2到arr1
np.subtract(arr1,arr2)| arr2从arr1
np.multiply(arr1,arr2)|中减去元素 按元素相乘arr1由arr2
np.divide(arr1,arr2)| 按元素划分arr1由arr2
np.power(arr1,arr2)| 元素提升arr1提升到arr2
np.array_equal(arr1,arr2)| 的力量 返回True数组是否具有相同的元素和形状
np.sqrt(arr)| 数组
np.sin(arr)| 中每个元素的平方根 阵列中每个元素的正弦
np.log(arr)| | 数组中每个元素的自然记录
np.abs(arr)| 数组中每个元素的绝对值
np.ceil(arr)| 舍入到最接近的int 
np.floor(arr)| 舍入到最接近的int 
np.round(arr)| 舍入到最接近的整数


统计

np.mean(arr,axis=0)| 返回沿特定轴
arr.sum()|的平均值 返回arr
arr.min()|的和 返回arr
arr.max(axis=0)|的最小值 返回特定轴
np.var(arr)|的最大值 返回数组
np.std(arr,axis=1)| 的方差 返回特定轴
arr.corrcoef()| 的标准偏差 返回数组的相关系数



猜你喜欢

转载自blog.csdn.net/chenvast/article/details/80375133