大数据时代的到来,使得很多工作都需要进行数据挖掘,从而发现更多有利的规律,或规避风险,或发现商业价值。
而大数据分析的基础是学好编程语言。
本文和你一起来探索Python中的resize函数,让你以最短的时间明白这个函数的原理。
也可以利用碎片化的时间巩固这个函数,让你在处理工作过程中更高效。
本文目录
一、安装numpy包
np.resize是numpy库下的函数,调用需先要安装numpy包。打开cmd,安装语句如下:
pip install numpy
由于numpy库是数据分析最常用的库之一,所以我早就安装过了,再安装会提示如下内容:
二、resize函数定义
np.resize是numpy库中一个函数,用于调整数组的大小。其基本调用语法如下:
import numpy as np
np.resize(a, new_shape)
常用参数详解:
a
(array_like):要调整大小的输入数组。
new_shape
(int or tuple of ints):整数或整数元组,用于指定输出数组的形状。
注1:如果新的形状大于原始数组的形状,那么新的数组会包含原始数组的重复副本。
注3:np.resize不会创建新的数组空间,而是返回原始数组的视图,因此如果原始数组发生变化,新的数组也会受到影响。
三、resize函数实例
1 扩大一维数组的大小 首先导入numpy库,然后扩展一维数组的大小,具体代码如下: 2 缩小一维数组的大小 接着缩小一维数组的大小,具体代码如下: import numpy as np #缩小一维数组的大小 arr2 = np.array([1, 2, 3, 4, 5, 6]) np.resize(arr2, 4) 得到结果: array([1, 2, 3, 4]) 从结果知,缩小的部分把原数组的值进行了裁剪。 3 把一维数组变为2*3维数组 接着设置参数,把一维数组变为2*3维数组,具体代码如下: import numpy as np #把一维数组变为2*3维数组 arr3 = np.array([1, 2, 3, 4, 5, 6]) np.resize(arr3, (2,3)) 得到结果: array([[1, 2, 3], [4, 5, 6]]) 从结果知,把一维数组调整成了2*3维数组。 4 直接数组resize和np.resize对比 先来看下直接数组resize,具体代码如下: import numpy as np #直接数组resize和np.resize对比 arr4 = np.array([[1,1], [2,3]]) arr4.resize(4, 5) print(arr4) 得到结果: [[1 1 2 3 0] [0 0 0 0 0] [0 0 0 0 0] [0 0 0 0 0]] 可以发现,和np.resize不同,直接数值resize会把缺失的部分用0值填充。 再来看下np.resize,具体代码如下: import numpy as np arr5 = np.array([[1,1], [2,3]]) arr5_resize = np.resize(arr5, (3, 3)) print(arr5) print(arr5_resize) 得到结果: [[1 1] [2 3]] [[1 1 2] [3 1 1] [2 3 1]] 可以发现,np.resize会把原数组的值拉伸按顺序依次填充。 5 把二维数组调整成一维数组 最后来看下把二维数组调整成一维数组,具体代码如下: #把多维数组调整为一维数组 import numpy as np arr6 = np.array([[1, 2], [3, 4]]) resized_arr = np.resize(arr6, 4) print(resized_arr) 得到结果: [1 2 3 4] 至此,Python中的resize函数已讲解完毕,如想了解更多Python中的函数,可以翻看公众号中“学习Python”模块相关文章。