《(1.27)--3.1.1numpy数组及其运算(三).ppt》由会员分享,可在线阅读,更多相关《(1.27)--3.1.1numpy数组及其运算(三).ppt(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、大数据分析与可视化BIG DATABIG DATA大数据,成就大未来!1 大数据分析基础2 大数据可视化实战BIG DATABIG DATA大数据,成就大未来!大数据分析与可视化1大数据分析基础1.1 numpy数组及其运算1.1.9 数组对函数运算的支持 扩展库numpy 提供了大量用于对数组进行计算的函数,可以用于对数组中所有元素进行同样的计算并返回新数组,处理速度比使用循环要快得多。大数据,成就大未来!大数据分析与可视化1大数据分析基础1.1 numpy数组及其运算1.1.9 数组对函数运算的支持import numpy as npx=np.arange(0,100,10,dtype=n
2、p.floating)print(x)print(np.sin(x)#一维数组中所有元素求正弦值x=np.array(1,2,3,4,5,6,7,8,9)print(x)print(np.cos(x)#二维数组中所有元素求余弦值print(np.round(np.cos(x)#四舍五入print(np.ceil(x/2)#向上取整大数据,成就大未来!大数据分析与可视化1大数据分析基础1.1 numpy数组及其运算1.1.10 改变数组形状 reshape()返回新数组但不能改变数组中元素的总数量;resize()对数组进行原地修改并且会根据需要进行补0或丢弃部分元素。另外,还可以通过数组的sh
3、ape属性直接原地修改数组的大小。大数据,成就大未来!大数据分析与可视化1大数据分析基础1.1 numpy数组及其运算1.1.10 改变数组形状 import numpy as np x=np.arange(1,11,1)xarray(1,2,3,4,5,6,7,8,9,10)x.shape#查看数组的形状(10,)x.size#数组中元素的数量10 x.shape=2,5#改为2行5列 xarray(1,2,3,4,5,6,7,8,9,10)x.shape(2,5)x.shape=5,-1#-1表示自动计算 xarray(1,2,3,4,5,6,7,8,9,10)大数据,成就大未来!大数据分
4、析与可视化1大数据分析基础1.1 numpy数组及其运算1.1.10 改变数组形状 x=x.reshape(2,5)#reshape()方法返回新数组 xarray(1,2,3,4,5,6,7,8,9,10)x=np.array(range(5)x.reshape(1,10)#reshape()不能修改数组元素个数,出错Traceback(most recent call last):File,line 1,in x.reshape(1,10)ValueError:total size of new array must be unchanged x.resize(1,10)#resize()
5、可以改变数组元素个数 xarray(0,1,2,3,4,0,0,0,0,0)np.resize(x,(1,3)#使用numpy的resize()返回新数组array(0,1,2)x#不对原数组进行任何修改array(0,1,2,3,4,0,0,0,0,0)大数据,成就大未来!大数据分析与可视化1大数据分析基础1.1 numpy数组及其运算1.1.11 数组布尔运算数组可以和标量或等长数组进行关系运算,返回包含若干True/False的数组,其中每个元素是原数组中元素与标量或另一个数组中对应位置上元素运算的结果。数组也支持使用包含True/False 的等长数组作为下标来访问其中的元素,返回Tr
6、ue对应位置上元素组成的数组。大数据,成就大未来!大数据分析与可视化1大数据分析基础1.1 numpy数组及其运算1.1.11 数组布尔运算 import numpy as np x=np.random.rand(10)#包含10个随机数的数组 xarray(0.56707504,0.07527513,0.0149213,0.49157657,0.75404095,0.40330683,0.90158037,0.36465894,0.37620859,0.62250594)x 0.5#比较数组中每个元素值是否大于0.5array(True,False,False,False,True,Fals
7、e,True,False,False,True,dtype=bool)xx0.5#获取数组中大于0.5的元素array(0.56707504,0.75404095,0.90158037,0.62250594)x sum(x0.4)&(x np.all(x np.any(x0.8)#是否存在大于0.8的元素True大数据,成就大未来!大数据分析与可视化1大数据分析基础1.1 numpy数组及其运算1.1.11 数组布尔运算 a=np.array(1,2,3)b=np.array(3,2,1)a b#两个数组中对应位置上的元素比较array(False,False,True,dtype=bool)
8、aab#数组a中大于b数组对应位置上元素的值array(3)a=barray(False,True,False,dtype=bool)aa=barray(2)x=np.arange(1,10)xarray(1,2,3,4,5,6,7,8,9)x(x%2=0)&(x5)#大于5的偶数,两个数组进行布尔与运算array(6,8)x(x%2=0)|(x5)#大于5的元素或者偶数元素,布尔或运算array(2,4,6,7,8,9)大数据,成就大未来!大数据分析与可视化1大数据分析基础1.1 numpy数组及其运算1.1.12 分段函数语法格式where()Where(condition,x,y)pie
9、cewise()piecewise(x,condlist,funclist,*args,*kw)大数据,成就大未来!大数据分析与可视化1大数据分析基础1.1 numpy数组及其运算1.1.12 分段函数 import numpy as np x=np.random.randint(0,10,size=(1,10)xarray(0,4,3,3,8,4,7,3,1,7)np.where(x x.resize(2,5)xarray(0,4,3,3,8,4,7,3,1,7)np.piecewise(x,x7,lambda x:x*2,lambda x:x*3)#小于4的元素乘以2,大于7的元素乘以3,其他元素变为0array(0,0,6,6,24,0,0,6,2,0)大数据,成就大未来!大数据分析与可视化1大数据分析基础1.1 numpy数组及其运算1.1.12 分段函数 np.piecewise(x,x3,(3x)&(x7,-1,1,lambda x:x*4)#小于3的元素变为-1,大于3小于5的元素变为1,大于7的元素乘以4#条件没有覆盖到的其他元素变为0array(-1,1,0,0,32,1,0,0,-1,0)BIG DATABIG DATA感谢您的观看!