Python numpy
来源:互联网 发布:预备党员网络课程心得 编辑:程序博客网 时间:2024/05/18 06:27
Python数据计算numpy
>>> import numpy as np>>> #array>>> data=[1,3,4,5]>>> type(data)<class 'list'>#array()产生矩阵对象>>> arr=np.array(data)>>> arrarray([1, 3, 4, 5])>>> type(arr)<class 'numpy.ndarray'>>>> dat=[[1,0,0],[0,1,0],[0,0,1]]>>> dat[[1, 0, 0], [0, 1, 0], [0, 0, 1]]>>> arr=np.array(data)>>> arrarray([1, 3, 4, 5])>>> arr=np.array(dat)>>> arrarray([[1, 0, 0], [0, 1, 0], [0, 0, 1]])>>> arr.shape(3, 3)>>> arr.dtypedtype('int32')#arange>>> np.arange(3,7)array([3, 4, 5, 6])>>> np.arange(3,7,2)array([3, 5])#eye>>> np.eye(4,k=1)array([[ 0., 1., 0., 0.], [ 0., 0., 1., 0.], [ 0., 0., 0., 1.], [ 0., 0., 0., 0.]])#T>>> arr.Tarray([1, 2, 3, 4])>>> arr=[[3,3,4,2],[3,4,5,6]]>>> arr[[3, 3, 4, 2], [3, 4, 5, 6]]>>> arr1=np.array(arr)>>> arr1array([[3, 3, 4, 2], [3, 4, 5, 6]])>>> arr1.Tarray([[3, 3], [3, 4], [4, 5], [2, 6]])#dot>>> arr1array([[3, 3, 4, 2], [3, 4, 5, 6]])>>> np.dot(arr1,arr1.T)array([[38, 53], [53, 86]])>>> np.dot(arr1.T,arr1)array([[18, 21, 27, 24], [21, 25, 32, 30], [27, 32, 41, 38], [24, 30, 38, 40]])#数据运算array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])>>> np.square(arr)array([ 0, 1, 4, 9, 16, 25, 36, 49, 64, 81], dtype=int32)>>> np.log(arr)array([ -inf, 0. , 0.69314718, 1.09861229, 1.38629436, 1.60943791, 1.79175947, 1.94591015, 2.07944154, 2.19722458])>>> np.ceil(1)1.0>>> np.ceil(5)5.0>>> arrarray([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])>>> np.ceil(4.6)5.0>>> np.floor(4.6)4.0>>> np.rint(np.log(arr))array([-inf, 0., 1., 1., 1., 2., 2., 2., 2., 2.])#双目运算>>> np.add(arr,np.log(arr))array([ -inf, 1. , 2.69314718, 4.09861229, 5.38629436, 6.60943791, 7.79175947, 8.94591015, 10.07944154, 11.19722458])>>> arrarray([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])>>> np.add(arr,5)array([ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14])>>> arrarray([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])#meshgrid>>> x=np.arange(1,4,1)>>> xarray([1, 2, 3])>>> y=np.arange(10,15,1)>>> yarray([10, 11, 12, 13, 14])>>> X,Y=np.meshgrid(x,y)>>> Xarray([[1, 2, 3], [1, 2, 3], [1, 2, 3], [1, 2, 3], [1, 2, 3]])>>> Yarray([[10, 10, 10], [11, 11, 11], [12, 12, 12], [13, 13, 13], [14, 14, 14]])>>>#[X,Y] = meshgrid(x,y) 将向量x和y定义的区域转换成矩阵X和Y,>>>#这两个矩阵可以用来表示mesh和surf的三维空间点以及两个变量的赋值。>>>#其中矩阵X的行向量是向量x的简单复制,而矩阵Y的列向量是向量y的简单复制。>>>#[X,Y] = meshgrid(x,y) 将向量x和y定义的区域转换成矩阵X和Y,>>>#这两个矩阵可以用来表示mesh和surf的三维空间点以及两个变量的赋值。>>>#其中矩阵X的行向量是向量x的简单复制,而矩阵Y的列向量是向量y的简单复制。#where>>> x=np.arange(10)>>> xarray([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])>>> y=np.arange(-9,1,1)>>> yarray([-9, -8, -7, -6, -5, -4, -3, -2, -1, 0])>>> cond=np.array([True,False,True,False,True,False,True,False,True,False])>>> np.where(cond,x,y)array([ 0, -8, 2, -6, 4, -4, 6, -2, 8, 0])>>> np.where(x>0,1,-1)array([-1, 1, 1, 1, 1, 1, 1, 1, 1, 1])>>> np.where(y<0,1,-1)array([ 1, 1, 1, 1, 1, 1, 1, 1, 1, -1])#计算>>> arr=np.random.randn(5,4)>>> arrarray([[-1.56699351, 0.0367636 , 0.47858635, -1.21582486], [-0.66492923, 1.48287249, 1.38008138, 1.92236202], [ 1.18952338, 1.21554153, -0.371991 , 1.22583606], [-0.86845156, 0.32021784, -0.97300478, 0.63786163], [-0.07806264, 1.04740613, 2.4356263 , 0.38637222]])>>> arr.mean()0.40098966781551437>>> np.mean(arr)0.40098966781551437>>> arr.sum<built-in method sum of numpy.ndarray object at 0x00000000082747B0>>>> arr.sum()8.0197933563102879>>> arr.mean(axis=1)array([-0.56686711, 1.03009666, 0.81472749, -0.22084422, 0.9478355 ])>>> #线性代数>>> from numpy.linalg import inv,qr,det>>> X=np.array([[1,2],[3,8]])>>> Xarray([[1, 2], [3, 8]])>>> X.T.dot(X)array([[10, 26], [26, 68]])>>> MAT=X.T.dot(X)>>> MATarray([[10, 26], [26, 68]])>>> inv(MAT)array([[ 17. , -6.5], [ -6.5, 2.5]])>>> det(MAT)4.000000000000079>>> q,r=qr(MAT)>>> qarray([[-0.35897908, -0.93334561], [-0.93334561, 0.35897908]]) #读写文件
阅读全文
0 0
- Python Numpy
- [python]numpy
- python numpy
- Python Numpy
- python numpy
- python ---numpy
- Python---Numpy
- Python--numpy
- Python Numpy
- python numpy
- python numpy
- Python numpy
- Python-numpy
- python-numpy
- python numpy
- python-numpy
- python numpy
- Python-NumPy
- jQuery
- 基于Unity5.0系统的新打包方式
- 测试驱动开发(TDD)
- Eclipse中编译maven项目在target中文件乱码
- 出现org.apache.http.NoHttpResponseException
- Python numpy
- Web开发技术漫谈
- Ext JS 6学习文档–第1章–ExtJS入门指南
- android 键盘顶起布局解决办法
- ubutu 14.04 系统才安装怎么修改分辨率
- Java过滤器和监听器详解
- Diagram Designer
- java反射
- 【问题解决】Mac上Android环境变量配置后Jenkins打包找不到环境变量问题