Python 科学工具使用
Python 科学工具笔记
numpy
- a = numpy.array([1,2,3,4]);// 创建一个numpy的数组对象
此时a.shape显示的值为(4,);
由此得出结论在一维的数组中, 数组的是列优先的 - numpy.random.uniform(low, high):
产生在low和high之间的随机数 - numpy.vdot(arrA, arrB):
计算arrA与arrB的数量积 - numpy.max(), .min(), .sum(), .average()
- numpy.random.randn():
Scipy
- scipy.integrate.quad(funcname, low, high): funcname函数的仅仅返回一个需要求解积分的式子
low: 积分下线
high: 积分上限
matplotlib.pyplot
import matplotlib.pyplot as plt
plt.hist()
plt.plot()
plt.pie()
plt.bar()
plt.show()
plt.scatter()
numpy库使用
- genfromtxt(filename, delimiter, dtype, skip_header=1/2)
filename: 文件名
delimiter: 分隔符, 用于分隔文件中每行的内容放入到矩阵中
dtype: 矩阵中的类型, ATTENTION: numpy矩阵中的所有元素是同一个类型
skip_header: 是否跳过首行
- numpy.array(list): 根据list返回一个numpy的矩阵
- obj.shape: 返回维度信息
- obj.dtype: 返回numpy的dtype类型对象, 显示矩阵中的元素类型
- [2], [2:3]: 对以为矩阵, 获取指定的元素
对于二维矩阵元素的获取:
[2:3, 3:4]: 逗号左侧表示对行的切片, 逗号右边表示对列的切片
对numpy中的矩阵进行操作符的操作(<. ==, >)等指的是对矩阵中每一个元素进行该操作, bool类型的操作返回的是bool序列
矩阵中的切片可是一个bool类型的序列, [bool_list], 返回对应的为True的元素组成的序列
obj.astype(dtype): 改变元素的类型
obj.min(),.max(), sum(),其中可以添加默认参数, axis=1|0, 如果为0表示按照列为单位计算min, max等, 返回每一行的min, max等, 如果为axis=1则是以行为单位
numpy.isnan(array): 返回bool序列, 判断元素的空项
obj.arange(0, 100, 2)
obj.linspace(0, 100, 100)
obj.ndim: 返回矩阵的维度
obj.size: 元素个数
obj.zeros(tuple)
obj.ones(tuple)
numpy.random.random((2, 3)): 生成2行3列的元素为随机数的矩阵
obj0.dot(obj1)或者numpy.dot(obj0, obj1): 矩阵乘法, obj0的列向量与obj1的行向量的数量积
numpy.exp(array), numpy.sin(array), numpy.sqrt(array), numpy.floor(array)
obj.ravel(): 解开矩阵, 将矩阵拉成以为向量
numpy.vstack(obj0, obj1): 将obj0与obj1垂直拼接
numpy.hstack(obj0, obj1): 将obj0与obj1水平拼接
numpy.vsplit(obj, 3): 将obj垂直切两刀平均分为3个矩阵
numpy.hsplit(obj, 3): 同理
numpy.vsplit(obj, (2, 3)): 以2行3列的元素所在的列为分隔线分隔为3份
numpy.hsplit(obj, (2, 3)): 同理
numpy.reshape(2, 3): 调整矩阵的行和列
obj.view(): 浅拷贝, 不建议使用
obj.copy(): 深拷贝
obj.tile(2, 3): 也为拷贝, 但是拷贝出来的矩阵的行是原来的2倍, 列是原来的3倍
obj.sort(axis=1|0): 按照行或者列进行判断
pandas库使用(pandas是对numpy的封装, 随意可以混合使用)
- pandas.read_csv(filename): 读取文件返回DataFrame对象(df), 只要数据是以逗号分隔的都可使用read_csv读取
- df.dtypes返回类型
- df.head(3): 查看前3行
- df.tail(3): 查看后3行
- df.columns: 列名
- df.shape: 维度信息, 表格的行和列信息
- df.loc[index]: 返回指定行的信息
- df['string']: 返回指定的名称的列信息, 返回Series, DataFrame就是有很多个Series中组成的
- 在pandas中的python内置的str类型为object类型(dtype中显示的)
- obj.dropna(): 去掉有空项的行
- Series对象
series.index返回index序列
series.sortindex排序index
series.sortvalues排序values
series[0]|series['str']: 返回索引对应的value
matplotlib.pyplot库使用
- 画出折线图
import matplotlib.pyplot as plt
x_values = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
y_values = [100, 200, 300, 120, 12, 213, 123]
x_label = 'Days'
y_label = 'Rain flow'
line_color = 'red'
legend_string = 'Trend'
plt.plot(x_label, y_label, c=line_color, label=legend_string) # plot函数作用: 画出图或者线(指的仅仅是折线, 柱形图的, 并不包含坐标的绘画)
plot函数参数介绍:
1: x轴数据序列
2: y轴数据序列
3: c: 折线的颜色
4: label: 折线对应的名称
plt.xlabel(x_label)
plt.ylabel(y_label)
plt.title('Demo')
plt.ledend(loc='best') # 显示折线对应的label, 就是图例
plt.xticks(rotation=45) # 设置x轴显示的数据的倾斜度为45, 便于显示标签
plt.show() # 显示图形
Python 科学工具使用的更多相关文章
- Python 科学工具笔记
Python 科学工具笔记 numpy a = numpy.array([1,2,3,4]);// 创建一个numpy的数组对象 此时a.shape显示的值为(4,); 由此得出结论在一维的数组中, ...
- 【Machine Learning】Python开发工具:Anaconda+Sublime
Python开发工具:Anaconda+Sublime 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现 ...
- Python科学计算(二)windows下开发环境搭建(当用pip安装出现Unable to find vcvarsall.bat)
用于科学计算Python语言真的是amazing! 方法一:直接安装集成好的软件 刚开始使用numpy.scipy这些模块的时候,图个方便直接使用了一个叫做Enthought的软件.Enthought ...
- 你不得不看的Python机器学习工具
IEEE Spectrum排行榜第一,Skill UP排名第一的开发工具,Stack Overflow年度调查中程序员最感兴趣的选择,Stack Overflow 6月份访问量最多的编程语言..... ...
- Python 科学计算-介绍
Python 科学计算 作者 J.R. Johansson (robert@riken.jp) http://dml.riken.jp/~rob/ 最新版本的 IPython notebook 课程文 ...
- Python科学计算基础包-Numpy
一.Numpy概念 Numpy(Numerical Python的简称)是Python科学计算的基础包.它提供了以下功能: 快速高效的多维数组对象ndarray. 用于对数组执行元素级计算以及直接对数 ...
- python 科学计算及数据可视化
第一步:利用python,画散点图. 第二步:需要用到的库有numpy,matplotlib的子库matplotlib.pyplot numpy(Numerical Python extensions ...
- PyCharm for Mac(Python 开发工具)破解版安装
1.软件简介 PyCharm 是 macOS 系统上一款 Python 编辑利器,具有智能代码编辑器,能理解 Python 的特性并提供卓越的生产力推进工具:自动代码格式化.代码完成.重构.自动 ...
- python 开发工具简介
一.python 开发工具简介 1.IDLE IDLE是开发python程序的基本IDE(集成开发环境),具备基本的IDE的功能,是非商业Python开发的不错的选择.当安装好python以后,IDL ...
随机推荐
- Layer 父子页面之间的交互
父页面获取子页面 var body = layer.getChildFrame('body',index);//建立父子联系 body.find("#parameter").val ...
- Linux的防火墙iptables配置示例
注:内容来自网络 一.关闭防火墙 1.重启后永久性生效: 开启:chkconfig iptables on 关闭:chkconfig iptables off 2.即时生效,重启后失效: 开启:ser ...
- LinkExtractor 构造器各参数说明
LinkExtractor 构造器各参数说明 特例: LinkExtractor构造器的所有参数都有默认值 各参数说明: allow 接收一个正则表达式或一个正则表达式列表,提取绝对url与正则表达式 ...
- Linux 下的 etc
/etc etc不是什么缩写,是and so on的意思 来源于 法语的 et cetera 翻译成中文就是 等等 的意思. 至于为什么在/etc下面存放配置文件, 按照原始的UNIX的说法(linu ...
- 如何在cuda内核函数中产生随机数(host端调用,device端产生)
最近,需要在kernel函数中调用浮点型的随机数.于是上网搜了下相关资料,一种方式是自己手动写一个随机数的__device__函数,然后在调用的时候调用这个函数.另一种,原来cuda在toolkit中 ...
- Window安装TensorFlow- GPU环境
[简述] 关于Window安装TensorFlow- GPU环境的文章我想网站已经有非常多了,但是为什么还要写这篇文章呢,就是被网上的文章给坑了.由于pip install tensorflow-gp ...
- SpringMVC from 表单标签和 input 表单标签
刚学习很懵 不知道还有springmvc 自己的表单 于是乎就上网查了一下 这个真的好用多啦 刚学习很懵 不知道还有springmvc 自己的表单 于是乎就上网查了一下 这个真的好用多啦 ...
- csv HTTP简单表服务器
HTTP Simple Table Server Download Performance testing with JMeter can be done with several JMeter in ...
- 【实例分割】PANet简单笔记
PANet是18年的一篇CVPR,作者来自港中文,北大,商汤与腾讯优图,PANET可看作Mask-RCNN+,是在Mask-RCNN基础上做的几处改进. 论文地址:https://arxiv.org/ ...
- Linux系统结构及常用命令
一.系统结构 Linux是一个倒树形结构,最大的目录名叫“/”(根目录) 根目录之下有许多的二级目录,这些目录在系统中都拥有自己不同的功能,如图: 以后的诸多命令的执行和操作都与这些目录相关,现在了解 ...