python科学计算基础知识
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科学计算基础知识的更多相关文章
- Python科学计算基础包-Numpy
一.Numpy概念 Numpy(Numerical Python的简称)是Python科学计算的基础包.它提供了以下功能: 快速高效的多维数组对象ndarray. 用于对数组执行元素级计算以及直接对数 ...
- python 科学计算基础库安装
1.numpyNumPy(Numeric Python)是用Python进行科学计算的基本软件包. NumPy是Python编程语言的扩展,增加了对大型多维数组和矩阵的支持,以及一个大型的高级数学函数 ...
- Python进阶----计算机基础知识(操作系统多道技术),进程概念, 并发概念,并行概念,多进程实现
Python进阶----计算机基础知识(操作系统多道技术),进程概念, 并发概念,并行概念,多进程实现 一丶进程基础知识 什么是程序: 程序就是一堆文件 什么是进程: 进程就是一个正在 ...
- Python科学计算之Pandas
Reference: http://mp.weixin.qq.com/s?src=3×tamp=1474979163&ver=1&signature=wnZn1UtW ...
- Python科学计算PDF
Python科学计算(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1VYs9BamMhCnu4rfN6TG5bg 提取码:2zzk 复制这段内容后打开百度网盘手机A ...
- python 科学计算及数据可视化
第一步:利用python,画散点图. 第二步:需要用到的库有numpy,matplotlib的子库matplotlib.pyplot numpy(Numerical Python extensions ...
- windows下安装python科学计算环境,numpy scipy scikit ,matplotlib等
安装matplotlib: pip install matplotlib 背景: 目的:要用Python下的DBSCAN聚类算法. scikit-learn 是一个基于SciPy和Numpy的开源机器 ...
- Python科学计算(二)windows下开发环境搭建(当用pip安装出现Unable to find vcvarsall.bat)
用于科学计算Python语言真的是amazing! 方法一:直接安装集成好的软件 刚开始使用numpy.scipy这些模块的时候,图个方便直接使用了一个叫做Enthought的软件.Enthought ...
- 目前比较流行的Python科学计算发行版
经常有身边的学友问到用什么Python发行版比较好? 其实目前比较流行的Python科学计算发行版,主要有这么几个: Python(x,y) GUI基于PyQt,曾经是功能最全也是最强大的,而且是Wi ...
随机推荐
- Ext 弹出窗体显示到iframe之外
主要是这句话 var _win = new top.Ext.Window({});即可完成需要功能 var _win = new top.Ext.Window({ title: ' ...
- kettle利用参数遍历执行指定目录下的所有对象
使用kettle设计ETL设计完成后,我们就需要按照我们业务的需要对我们设计好的ETL程序,ktr或者kjb进行调度,以实现定时定点的数据抽取,或者说句转换工作,我们如何实现调度呢? 场景:在/wor ...
- Learning How To Code Neural Networks
原文:https://medium.com/learning-new-stuff/how-to-learn-neural-networks-758b78f2736e#.ly5wpz44d This i ...
- [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 ...
- Linux上安装Bugzilla4.4小记
因项目需要,我受命在一台Linux服务器上搭建一个Bugzilla,进过一天的调试,这项任务总算完成了.现在可以肯定的说,安装过程不复杂,基本就是解压,填参数,执行命令.Bugzilla要跑起来,本机 ...
- css中url的路径含义及使用
http://www.jb51.net/css/37554.html 在CSS中有用url语法来指定background-image或是其他引用文件中,如: 复制代码 代码如下: .mainheade ...
- ubuntu Server 设置主机静态 ip地址
ubuntu Server 设置主机静态 ip地址 1:先输入 ifconfig 查看当前网络配置 2:然后关闭 eth0 网卡 sudo ifdown eth0 3:配置静态ip sudo vim ...
- CentOS 下安装MySQL 默认源为5.1版本
CentOS——默认为安装5.1版本,如果需要安装5.5版本,需要使用remi源 yum install mysql-server –enablerepo=remi Ubuntu——默认为安装5. ...
- Codeforces B - Berland National Library
B. Berland National Library time limit per test 1 second memory limit per test 256 megabytes input s ...
- ideaIU-15.0.2 注册码
注册时选择 License server ,填 http://idea.lanyus.com ,然后点击 OK