1、导入基本函数库

import numpy as np

2、获取矩阵元素字节数

 a=np.array([1,2,3],dtype=np.float32)
a.itemsize
output: 4

3、获取数组维数A.shape

例如

 a=np.array([[1,2,3],[4,5,6]]);

 a.shape

 output:(2,3)

4、选取某一行或某一列元素,

注意numpy中数组起始坐标是0开始的,跟matlab中有区别。matlab中是从1开始的。

python中列表[start,end,step],有开始数、终止数、步长;而matlab中是[start:step:end]。

a[:,0],选取第一列

a[0,:],选取第一行

5、numpy中数组赋值时,如果没有超过原始数组维数时,只将引用赋值,而不是复制赋值。

如果想要进行复制,需要使用函数B=A.copy(),与matlab有区别例如:

 import numpy as np
b=np.ones((3,3))
c=b;
print 'b\n',b
print 'c:\n',c
c[0,0]=12;
print 'b\n',b
print 'c:\n',c b
[[ 1. 1. 1.]
[ 1. 1. 1.]
[ 1. 1. 1.]]
c:
[[ 1. 1. 1.]
[ 1. 1. 1.]
[ 1. 1. 1.]]
b
[[ 12. 1. 1.]
[ 1. 1. 1.]
[ 1. 1. 1.]]
c:
[[ 12. 1. 1.]
[ 1. 1. 1.]
[ 1. 1. 1.]]

6、 2维矩阵matrix,python中matrix只能是二维的。

简单应用,矩阵乘

 a=np.matrix([[1,2,3],[4,5,6],[7,8,9]]);
b=np.matrix([[1],[0],[0]]);
a*b
matrix([[1],
[4],
[7]])

也可以使用数组点积表示:

 A=np.array([[1,2,3],[4,5,6],[7,8,9]])
x=np.array([[1],[0],[0]])
A.dot(x)
array([[1],
[4],
[7]])

7、当需要将数组转换成矩阵时,要使用np.matrix(A)

例如

 a=np.ones((3,3));

 b=np.ones((3,1));

 np.matrix(a)*b

 matrix([[ 3.],
[ 3.],
[ 3.]])

8、深度复制,对于列表、元组、字典想要复制,需要使用copy模块里deepcopy函数

例如:

import copy as cp
a=[[,,],[,,]];
b=cp.deepcopy(a);
a[][]=;
print a
print b

9、array是元素与元素之间的运算

matrices是服从线性代数运算法则

通过dot来更改运算方式

x=np.ones((,));
y=np.ones((,));
print np.dot(x,y) [[ . .]
[ . .]]

array数据类型转换成matrix类型,需要使用Z=asmatrix(A)或Z=mat(A)

a=array([,,]);
a*a

a=np.array([1,2,3]);
a*a

array([1, 4, 9])

10、type、dtype、shape用法

type用来说明数据类型type(A)

dtype是用来指示array数据类型A.dtype

shape用来说明array的大小,A.shape

python科学计算基础知识的更多相关文章

  1. Python科学计算基础包-Numpy

    一.Numpy概念 Numpy(Numerical Python的简称)是Python科学计算的基础包.它提供了以下功能: 快速高效的多维数组对象ndarray. 用于对数组执行元素级计算以及直接对数 ...

  2. python 科学计算基础库安装

    1.numpyNumPy(Numeric Python)是用Python进行科学计算的基本软件包. NumPy是Python编程语言的扩展,增加了对大型多维数组和矩阵的支持,以及一个大型的高级数学函数 ...

  3. Python进阶----计算机基础知识(操作系统多道技术),进程概念, 并发概念,并行概念,多进程实现

    Python进阶----计算机基础知识(操作系统多道技术),进程概念, 并发概念,并行概念,多进程实现 一丶进程基础知识 什么是程序: ​   程序就是一堆文件 什么是进程: ​   进程就是一个正在 ...

  4. Python科学计算之Pandas

    Reference: http://mp.weixin.qq.com/s?src=3&timestamp=1474979163&ver=1&signature=wnZn1UtW ...

  5. Python科学计算PDF

    Python科学计算(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1VYs9BamMhCnu4rfN6TG5bg 提取码:2zzk 复制这段内容后打开百度网盘手机A ...

  6. python 科学计算及数据可视化

    第一步:利用python,画散点图. 第二步:需要用到的库有numpy,matplotlib的子库matplotlib.pyplot numpy(Numerical Python extensions ...

  7. windows下安装python科学计算环境,numpy scipy scikit ,matplotlib等

    安装matplotlib: pip install matplotlib 背景: 目的:要用Python下的DBSCAN聚类算法. scikit-learn 是一个基于SciPy和Numpy的开源机器 ...

  8. Python科学计算(二)windows下开发环境搭建(当用pip安装出现Unable to find vcvarsall.bat)

    用于科学计算Python语言真的是amazing! 方法一:直接安装集成好的软件 刚开始使用numpy.scipy这些模块的时候,图个方便直接使用了一个叫做Enthought的软件.Enthought ...

  9. 目前比较流行的Python科学计算发行版

    经常有身边的学友问到用什么Python发行版比较好? 其实目前比较流行的Python科学计算发行版,主要有这么几个: Python(x,y) GUI基于PyQt,曾经是功能最全也是最强大的,而且是Wi ...

随机推荐

  1. Ext 弹出窗体显示到iframe之外

    主要是这句话 var _win = new top.Ext.Window({});即可完成需要功能 var _win = new top.Ext.Window({           title: ' ...

  2. kettle利用参数遍历执行指定目录下的所有对象

    使用kettle设计ETL设计完成后,我们就需要按照我们业务的需要对我们设计好的ETL程序,ktr或者kjb进行调度,以实现定时定点的数据抽取,或者说句转换工作,我们如何实现调度呢? 场景:在/wor ...

  3. Learning How To Code Neural Networks

    原文:https://medium.com/learning-new-stuff/how-to-learn-neural-networks-758b78f2736e#.ly5wpz44d This i ...

  4. [Node.js]30. Level 6: Listen 'Question' from client, and then Answer the Question

    Clients can also answer each other questions, so let's build that feature by first listening for the ...

  5. Linux上安装Bugzilla4.4小记

    因项目需要,我受命在一台Linux服务器上搭建一个Bugzilla,进过一天的调试,这项任务总算完成了.现在可以肯定的说,安装过程不复杂,基本就是解压,填参数,执行命令.Bugzilla要跑起来,本机 ...

  6. css中url的路径含义及使用

    http://www.jb51.net/css/37554.html 在CSS中有用url语法来指定background-image或是其他引用文件中,如: 复制代码 代码如下: .mainheade ...

  7. ubuntu Server 设置主机静态 ip地址

    ubuntu Server 设置主机静态 ip地址 1:先输入 ifconfig 查看当前网络配置 2:然后关闭 eth0 网卡 sudo ifdown eth0 3:配置静态ip sudo vim ...

  8. CentOS 下安装MySQL 默认源为5.1版本

    CentOS——默认为安装5.1版本,如果需要安装5.5版本,需要使用remi源 yum install mysql-server –enablerepo=remi   Ubuntu——默认为安装5. ...

  9. Codeforces B - Berland National Library

    B. Berland National Library time limit per test 1 second memory limit per test 256 megabytes input s ...

  10. ideaIU-15.0.2 注册码

    注册时选择 License server ,填 http://idea.lanyus.com ,然后点击 OK