python之numpy库

数据的维度

纬度:一组数据的组织形式,即数据间的关系,表达数据含义。简单来说就是,一个输入(如甲)其中包含的属性(如身高,体重,年龄等),包含的属性即维度。

百度百科

维度(Dimension),又称为维数,是数学中独立参数的数目。在物理学和哲学的领域内,指独立的时空坐标的数目。0维是一个无限小的点,没有长度。1维是一条无限长的线,只有长度。2维是一个平面,是由长度和宽度(或部分曲线)组成面积。3维是2维加上高度组成体积。4维分为时间上和空间上的4维,人们说的4维经常是指关于物体在时间线上的转移。(4维准确来说有两种。1.四维时空,是指三维空间加一维时间。2.四维空间,只指四个维度的空间。)四维运动产生了五维。
从广义上讲:维度是事物“有联系”的抽象概念的数量,“有联系”的抽象概念指的是由多个抽象概念联系而成的抽象概念,和任何一个组成它的抽象概念都有联系,组成它的抽象概念的个数就是它变化的维度,如面积。此概念成立的基础是一切事物都有相对联系。

numpy库

numpy是一个开源的Python科学技术基础。主要提供功能有:
1.提供一个强大的n维数组对象ndarray;
2.提供广播功能函数,用于数组间计算;
3.整合c/c++/Fortran代码的工具;
4.提供线性代数,傅里叶变换,随机数生成等功能。

数组对象:ndarray

数组对象可以去掉元素间运算所需要的循环,使一维向量更像单个数据,简化程序员对数据的处理。利用计算优化,提高运算速度。采用相同的数据类型有利于节约储存空间。

ndarray由两部分组成:

1.实际的数据
2.描述这些数据的元数据(如数据纬度、数据类型等)

ndarray对象的属性
属性说明
.ndim秩,数据的维度
.shape对象的尺寸,每个维度的尺寸
.size元素的个数
.dtype元素类型
.itemsize每个元素的大小,以字节为单位

numpy相关函数

函数说明
.array根据给定数据产生一个ndarray对象
.arange(n)返回ndarray类型,元素从0到n-1
.ones(shape)根据shape(元组类型)生成一个全1ndarray类型
.zeros(shape)根据shape生成一个全0数组
.full(shape,val)根据shape生成一个全是val的数组
.eye(n)创建一个正方的n*n单位矩阵,对角线为1,其余为0的数组
.linspace(start,stop,spacing)生成一个等差数列(起始位,截止位,个数)
.ones_like(a)根据数组a的形状生成一个全1的数组
.zeros_like(a)根据a的形状生成全0数组
.full_like(a,val)根据a的形状生成一个全val的数组
.concatenate()将两个或多个数组合并生成一个新的数组
.reshape(shape)不改变元素,创建一个shape形状的数组
.resize(shape)不改变元素,修改数组形状为shape形状
.salades(ax1,ax2)将数组n个维度中两个维度进行调换
.flatten()对数组进行降维处理,原数组不变
.ravel()使多维数组成为一维
.transpose()计算矩阵的转置
.copy()深度复制
.tolist()转换成数组
.abs(x)计算数组各元素的绝对值
.sqrt(x)计算数组各元素的平方根
.square(x)计算数组各元素的平方
.log(x)计算数组各元素的对数
.ceil(x)计算数组各元素的ceiling值
.floor(x)计算数组各元素的floor值
.rint(x)各元素四舍五入值
.modf(x)将数组各元素的小数和整数部分以两个独立数组形式返回
.cos(x).sin(x).tan(x)各元素的三角函数
.exp(x)各元素的指数值
.sign(x)各元素的符号值
.random.rand(matsize)在一个尺寸为matsize的数组中,产生0到1之间的平均分布随机数
.random.randn(matsize)matsize数组中,产生以0为均值的单位方差的高斯随机数
.random.normal(mean,stdev,
matsize)matsize数组中,产生指定均值和方差的高斯随机数
.random.uniform(low,high,matsize)matsize数组中,产生low带high之间的平均分布随机数
.random.normal(loc,scale,size)size型状正态分布数组,loc均值,scale标准差
.random.poisson(lam,size)size型状泊松分布,lam随机事件发生概率
.random.randint(low,high,matsize)matsize数组中,产生low到high之间的随机数
.random.seed(s)随机种子
.random.shuffle(a)根据数组a的第1轴进行随机排列,改变数组a
.random.permutation(a)根据数组a的第1轴进行随机排列,不改变数组a
.random.choice(a[,size,replace,p])从一维数组a中以概率p抽取元素,形成suze形状的新数组,replace表示是否可以重用元素,默认false
.random.sum(a,axis=none)根据给定轴axis计算数组a元素和
.random.mean(a,axis=none)根据给定轴axis计算数组a元素期望
.random.average(a,axis=none,weights=none)根据给定轴axis计算数组a元素的加权平均值
.random.std(a,axis=none)根据给定轴axis计算数组a元素标准差
.random.var(a,axis=none)根据给定轴axis计算数组a元素方差
.linalg.inv(a)计算数组a的逆
.linalg.pinv(a)计算数组a的逆,即使a不是方型数组
.linalg.det(a)计算数组a的行列式的值
.linalg.eig(a)计算数组a的特征值和特征向量
.savetxt(frame,array,fmt=’%.18e’,delimiter=None)保持为csv文件,frame:文件、字符串或产生器(文件名),array:存入文件的数组,fmt:写入文件的格式,delimiter:分割字符串,默认空格
.loadtxt(frame,dtype=np.float,delimiter=None,unpack=False)读入csv文件。frame:文件名,dtype:数据类型,delimiter:分割字符串,unpack:如果是true,读入属性将分别写入不同变量
.tofile(frame,sep=’’,format=’%s’)存储多维数组,frame:文件,sep:数据分割字符串,format:写入格式
.fromfile(frame,dtype=float,count=-1,sep=’’)读取多维数据文件
.save(frame,array)便捷文件存
.load(frame)便捷文件取
.gradient(f)计算数组f中元素的梯度,当f为多维时,返回每个维度梯度

*梯度:连续值之间的变化率

csv只能存取一维、二维数组

数组的操作

1.数组与标量的运算等同于数组中每一个元素与标量运算
2.数组间的运算
函数说明
+_*/ **两个数组各元素进行对应的运算
.maximun(x,y).fmax().minimun(x,y).fmin()元素级的最大值/最小值计算
.mod(x,y)元素级的模运算
.copysign(x,y)将数组y中各元素值的符号赋值给数组x对应元素
><= <= == !=算术比较,产生布尔型数组
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值