NumPy Cheat Sheet - 用于数据科学的Python
NumPy是一个使Python能够快速处理数据的库。NumPy最初于1995年以'Numeric'的形式推出,是许多重要的Python数据科学库的基础,包括Pandas,SciPy和scikit-learn。
在第一次学习NumPy时很难记住你需要的所有函数和方法,而在Dataquest我们主张习惯于查阅NumPy文档,有时候很方便有一个方便的参考,所以我们把这个作弊放在一起表格帮你解决!
如果您对学习NumPy感兴趣,可以参考我们的NumPy教程博客文章,或者您可以免费注册并通过我们的交互式Python数据科学课程开始学习NumPy 。下载此备忘单的可打印PDF
关键和进口
在这个备忘单中,我们使用以下简写: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))
| 包含所有值的3
x 4
数组1
np.eye(5)
| 5
X 5
的阵列0
与1
上对角(单位矩阵)np.linspace(0,100,6)
| 6
从| 0
到100
np.arange(0,10,3)
| 的均匀分割值数组 值的数组0
从小于10
步骤3
(例如[0,3,6,9]
)np.full((2,3),8)
| 包含所有值的2
x 3
数组8
np.random.rand(4,5)
| 4
x 5
- 随机浮点数0
- 1
np.random.rand(6,7)*100
| 6
x 7
- 随机浮点数0
- 100
np.random.randint(5,size=(2,3))
| 具有随机整数的2
x 3
数组0
-4
检查属性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()
|的特定轴 将2D阵列展平two_d_arr
为1D arr.T
| 转置arr
(行成为列,反之亦然)arr.reshape(3,4)
| 重塑arr
以3
行,4
列,而不改变数据arr.resize((5,6))
| 将arr
形状更改为5
x 6
并使用填充新值0
添加/删除元素np.append(arr,values)
| 将值附加到arr
np.insert(arr,2,values)
|的结尾 arr
在index 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
th索引上水平拆分
索引/切片/子集arr[5]
| 返回索引5
arr[2,5]
| 处的元素 返回索引[2][5]
arr[1]=4
| 上的2D数组元素 在索引上1
为数组赋值4
arr[1,3]=10
| 在索引上[1][3]
为数组赋值10
arr[0:3]
| 返回索引处的元素0,1,2
(在2D数组上:返回行0,1,2
)arr[0:3,4]
| 返回的行中的元素0,1,2
在列4
arr[:2]
| 返回索引处的元素0,1
(在2D数组上:返回行0,1
)arr[:,1]
| 返回index元素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
th次幂
矢量数学np.add(arr1,arr2)
| 元素添加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)
| 舍入到最近的int
统计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()
| 返回数组的相关系数
下载此备忘单的可打印版本
如果您想下载此备忘单的可打印版本,您可以在下面这样做。下载此备忘单的可打印PDF
约什德夫林http://Dataquest.io的数据科学家。喜欢数据和澳洲足球规则。澳大利亚生活在德克萨