numpy模块中函数的应用

numpy模块中函数的应用
数学函数
算术函数
统计函数
矩阵函数

import numpy as np

#三角函数

#a = np.array([0,30,60,90])
#print('正弦弧度为:',np.sin(a))
#print('正弦值为:',np.sin(a*np.pi/180))
#print('余弦值为:',np.cos(a*np.pi/180))
#print('正切值为:',np.tan(a*np.pi/180))
#print('斜边值为:',np.hypot(13,12))
#arcsin = np.arcsin(np.sin(a*np.pi/180))
#print('反正弦弧度为:',arcsin)
#print('反正弦弧度转换为角度:',np.degrees(arcsin))
#print('角度转换为弧度:',np.radians(a))
#print('弧度转换为角度:',np.rad2deg(np.radians(a)))

#数值修约

#a = np.random.uniform(range(1,6),6)  #产生5个6以内的随机小数
#print('原小数数组为:',a)
#print('默认四舍五入后:',np.around(a))
#print('四舍五入到小数点右侧一位:',np.around(a,decimals=1))
#print('四舍五入到小数点左侧一位:',np.around(a,decimals=-1))
#print('最接近的整数:',np.rint(a))
#print('比小数小的最接近的整数:',np.floor(a))
#print('比小数大的最接近的整数:',np.ceil(a))
#print('向0舍入到最接近的整数;',np.fix(a))

#算术函数

#a = np.random.uniform(range(1,6),6)
#b = np.random.uniform(range(1,6),6)
#print('随机数组a:',a)
#print('随机数组b:',b)
#print('数组相加结果:',np.add(a,b))
#print('数组相减结果:',np.subtract(a,b))
#print('数组相乘结果:',np.multiply(a,b))
#print('数组相除结果:',np.divide(a,b))
#print('数组a导数结果:',np.reciprocal(a))
#print('数组a对应负数为:',np.negative(a))
#print('数组a对应数组b元素中的幂:',np.power(a,b))
#print('数组a与数组b元素求余:',np.mod(a,b))

#统计函数

#a = np.array([1,2,3,4,5,6,7,8,9])
#b = np.array([[1,3,5],[2,4,6],[8,10,12]])
#print('数组a中最大元素为:',np.amax(a))
#print('数组b中最大元素为:',np.amax(b))
#print('原数组b为:\n',b)
#print('以列方式获取数组b最大元素为:',np.amax(b,axis=0))  #寻找每一列最大的元素
#print('以行方式获取数组b最大元素为:',np.amax(b,axis=1))  #寻找每一行最大的元素
#a = np.array([1,2,3,4,5,6,7,8,9])
#b = np.array([[1,3,5],[2,4,6],[8,10,12]])
#print('数组a中元素差为:',np.ptp(a))  #通过ptp()函数计算数组中最大值和最小值的差
#print('数组b中元素差为:',np.ptp(b))
#print('数组b为:\n',b)
#print('以列方式计算数组b元素差为:',np.ptp(b,axis=0))  #每一列的最大值和最小值的差
#print('以行方式计算数组b元素差为:',np.ptp(b,axis=1))  #每一行的最大值和最小值的差
#a = np.array([1,2,3,4,5,6,7,8,9])
#b = np.array([[1,3,5],[2,4,6],[8,10,12]])
#print('数组a所有元素的和:',np.sum(a))
#print('数组b所有元素的和:',np.sum(b))
#print('以列方式计算数组b多有元素和:',np.sum(b,axis=0))  #数组每一列元素求和
#print('以行方式计算数组b所有元素和:',np.sum(b,axis=1))  #数组每一行元素求和
#a = np.array([1,5,10])
#b = np.array([[1,3,5],[2,4,6]])
#print('数组a百分位为50的值:',np.percentile(a,50))  #percentile()函数获取数组元素的百分位数
#print('数组b百分位为50的值:',np.percentile(b,50))
#print('以列方式计算数组b百分位为50的值:',np.percentile(b,50,axis=0))
#print('以行方式计算数组b百分位为50的值:',np.percentile(b,50,axis=1))

#矩阵函数

#from numpy import matlib
#empty()函数中参数shape为指定矩阵的形状,参数dtype为数据类型
#order为'C'时,表示行序优先,为'F'时表示列序优先
#print('随机数矩阵:\n',matlib.empty((3,3),dtype='int32',order='F'))
#print('以数字1填充的矩阵:\n',matlib.ones((3,3)))
#print('以数字0填充的矩阵:\n',matlib.zeros((3,3)))
#打印创建对角线为1的矩阵,参数n为行数,M为列数,k为对角线索引,dtype为数据类型
#print('对角线为1的矩阵:\n',matlib.eye(n=3,M=3,k=0,dtype=int))
#a = np.array([[1,2,3],[4,5,6],[7,8,9]])
#b = np.mat(a)
#c = np.mat('123;456;789')
#print('创建矩阵b:\n',b)
#print('创建矩阵c:\n',c)
#print('矩阵b类型:',type(b),'\n矩阵c类型:',type(c))
#print('矩阵b转换为数组:',type(np.asarray(b)))
#print('数组a转换为矩阵:',type(np.asmatrix(a)))

#广播机制

#a = np.array([1,2,3])
#b = np.array([4,5,6])
#print('数组a与数组b相乘结果为:',a*b)  #数组形状相同,相乘就是两个数组对应位相乘
#当计算两个不同形状的数组时,自动触发广播机制
#a = np.array([[1,1,1],[2,2,2],[3,3,3]])
#b = np.array([10,20,30])
#print('数组a与数组b相乘结果为:\n',a*b)  #启动广播机制时,需要将较小的数组形状进行扩展,让两个数组形状相同
#实现两个形状不同维度不同的数组计算,广播机制依然适用
#a = np.arange(0,6).reshape(6,1)  #创建6行1列的二维数组
#b = np.arange(1,5)
#print('数组a、b之和为:\n',a+b)  #数组a和b均扩展为6行4列的数组再相加,a每一列元素相同,b每一行元素相同

你可能感兴趣的:(python学习,python,算法,numpy)