科学计算库与可视化
文章平均质量分 93
python常用的几种科学计算库和可视化工具
SongpingWang
计算机视觉相关--程序语言相关
展开
-
2D坐标系下的点的转换矩阵(平移、缩放、旋转、错切)
进行错切操作,错切一般用于弹性物体的变形处理。假设沿x 方向与y方向错切参数分别为。在2D空间中,我们经常需要将一个点平移到另一个位置。另外就是需要一个表示对称轴位置的点(对称轴2点中任意一点),表示为。进行旋转操作,一般来说逆时针为正,顺时针为负,假设旋转角度为。进行缩放操作,我们不妨缩放因子在。对于镜像,对称轴的法向量。, 假设平移后点的坐标为。原创 2023-07-25 19:15:00 · 1802 阅读 · 0 评论 -
numexpr 加速 numpy与pandas
NumPy 虽然通过底层高度优化过的计算库可以实现接近C的高效计算,但在计算复杂且计算量庞大的时候多少还是有些慢。Numexpr 库是一个非常简单易用的 Numpy性能提升工具,很大程度上解决了性能的问题。查看文章:https://numexpr.readthedocs.io/projects/NumExpr3/en/latest/https://pypi.org/project/numexpr/安装:pip install numexpr使用示例:>>> import num原创 2021-02-25 17:27:24 · 1814 阅读 · 0 评论 -
Numpy(Pandas) 删除全为零的列
在处理numpy数组,有这个需求,故写下此文:使用np.argwhere和np.all来查找索引。要使用np.delete删除它们。示例1import numpy as npa = np.array([[1, 2, 0, 3, 0], [4, 5, 0, 6, 0], [7, 8, 0, 9, 0]])idx = np.argwhere(np.all(a[..., :] == 0, axis=0))a2 = np.delete(a,原创 2020-09-07 19:10:58 · 6510 阅读 · 1 评论 -
numpy 移动平均与卷积
文章目录一、滑动平均二、一维最佳实践三、二维图像平滑平均一、滑动平均滑动平均滤波法(又称递推平均滤波法),时把连续取N个采样值看成一个队列 ,队列的长度固定为N ,每次采样到一个新数据放入队尾,并扔掉原来队首的一次数据.(先进先出原则) 把队列中的N个数据进行算术平均运算,就可获得新的滤波结果。N值的选取:流量,N=12;压力:N=4;液面,N=4~12;温度,N=1~4优点: 对周期性干扰有良好的抑制作用,平滑度高 适用于高频振荡的系统缺点: 灵敏度低 对偶然出现的脉冲性干扰的抑制作用较原创 2020-08-21 20:12:01 · 3477 阅读 · 0 评论 -
numpy 数组的旋转、上下翻转、镜像
常见的数组翻转等方法函数描述transpose对换数组的维度ndarray.T转置rollaxis向后滚动指定的轴swapaxes对换数组的两个轴np.transpose(),numpy.array.Timport numpy as nparr0 = np.arange(12).reshape(3, 4)arr2 = np.trans...原创 2019-07-28 09:27:04 · 45667 阅读 · 3 评论 -
Numpy 中 rand, randn, randint,random_sample用法
文章目录rand()randn() 用法与 rand() 一样randint()random_sample()函数名功能参数使用(int a,b,c,d)rand(int1,[int2,[int3,]])生成(0,1)均匀分布随机数(a),(a,b),(a,b,c)randn(int1,[int2,[int3,]])生成标准正态分布随机数(a),(a,b),(...原创 2019-06-04 21:36:56 · 10088 阅读 · 0 评论 -
Numpy 中排序统计函数(argsort,bincount)
1. argsort,argmax与argmin.sort就是排序,argsort就是返回排序前数字的索引。argmax与argmin.:一个返回最大值的索引,一个返回最小值的索引。import numpy as npc = np.array([1,2,5,9,3])print('输出排序结果:',np.sort(c))print('输出排序前索引:',np.argsort(c))...原创 2019-08-18 09:49:42 · 405 阅读 · 0 评论 -
Numpy基础+进阶+高级
一、ndarray概念 1、回顾python基本类型数字类型: 整型: 布尔型bool、整型int、长整形long 非整型:浮点float 、复数complex容器: 序列:字符串str 、列表list、元组tuple 集合:可变集合set、不可变集合frozen set ...原创 2018-06-01 13:59:32 · 4040 阅读 · 2 评论 -
Numpy 中不常用函数(shift,count_nonzero,diag,spacing,tile/repmat)
一、加载csv数据import numpy as npclose,amount=np.loadtxt("./data.csv",delimiter=",",usecols=(6,7),unpack=True) #导入收盘价、成交量两列 # delimiter=: 分隔符 # usecols=(): 将所有获取数据的列索引放入元组中 # un原创 2018-05-28 18:47:44 · 4735 阅读 · 0 评论 -
Numpy 距离公式,获取重复元素
统计列表重复元素from collections import defaultdictdd = defaultdict(list)cc = [1, 2, 3, 2, 4]for k, val in [(v, i) for i, v in enumerate(cc)]: dd[k].append(val)print('dd:',dd)# 访问dd:元素(重复)出现的...原创 2018-05-25 09:13:05 · 448 阅读 · 0 评论 -
Numpy 中 numpy.ndarray 四则运算--结构化数组
文章目录求两点之间的距离求多个点之间两两的距离求两点之间的距离import numpy as npvector1 = np.array([3,4])vector2 = np.array([0,0])op1 = np.sqrt(np.sum(np.square(vector1 - vector2)))op2 = np.linalg.norm(vector1 - vector2)p...原创 2019-06-17 13:09:50 · 801 阅读 · 0 评论 -
Pandas——练习题一
作业一:(使用jupyter notebook 工具)Step 1. 导入相应的模块import pandas as pdimport numpy as npfrom pandas import Series,DataFrameStep 2. 给定的原始数据集 # Create an example dataframe about a fictional armyraw_...原创 2018-06-22 11:08:28 · 11187 阅读 · 8 评论 -
Pandas——练习题二
作业一:import pandas as pdimport numpy as npfrom pandas import DataFrame,SeriesStep 1.加载数据(datasets/users.csv)users = pd.read_csv("datasets/users.csv",sep = '|')usersStep 2. 以occupation...原创 2018-06-26 14:52:36 · 4721 阅读 · 3 评论 -
Pandas——基础(创建与查看)
一、Pandas数据结构 1.1 pandas学习资料http://pandas.pydata.org/pandas-docs/stable/10min.html#operationhttp://pandas.pydata.org/pandas-docs/stable/api.html (API资料查询) 安装:推荐Anaconda ,关于Python数...原创 2018-05-26 09:34:50 · 1828 阅读 · 0 评论 -
Pandas——进阶一(数据处理)
Pandas——进阶一、Pandas数据修改 1.1 数据复制–直接赋值 若直接赋值的话,只是复制索引,元素存储在相同内存位置中,对元素修改会影响另外一个 train1 = train.head() train1.iloc[0,0] #源数据 train.iloc[0,0] = 100 #修改其中一个对象 #对2个对象都起作用 ...原创 2018-06-21 12:35:17 · 2984 阅读 · 1 评论 -
Pandas——进阶二(字符串、时间戳)
一、pandas中 字符串 处理对字符串 进行拆分连接(去空格或者其它符号)import re text ='foo bar \t good \tssda' strlist = re.split('\s+',text) #正则匹配任意空字符(去除空格)输出1:['foo', 'bar', 'good', 'ssda']"#".join(strl原创 2018-06-22 11:05:34 · 2677 阅读 · 0 评论 -
pandas 高级(函数与运算)
pandas高级篇一、向量化函数操作向量化函数应用 -map(变换数据和创造新变量)map是作用在 Series 上,是元素级别操作Series.map(arg,na_action=None) arg可以是一个函数,对元素做函数变换 也可以是一个dict、series 对元素做数据映射向量化函数应用 -applymapapplymap 是作用在 dat...原创 2018-06-08 08:40:59 · 6183 阅读 · 0 评论 -
pandas 高级二(数据分组,筛选;文件保存)
以下示例均导入以下包import pandas as pdfrom numpy import nan as Naimport numpy as npfrom pandas import DataFrame,Seriesimport sys一、数据分组 cut / qcut 1.1 pd.cutpd.cut(arr,bins,right=True,labels=Non...原创 2018-06-25 13:04:21 · 3887 阅读 · 0 评论 -
pandas 常用函数与方法汇总
pandas数据变形–分组与聚合agg(func)agg实现了apply+combine func取内置聚合函数(如max,min) func取自定义函数 func取函数列表 func取key为列名、value为函数的dict结果 行索引为groupby 的by值 列名: 当func为一个函数时,列名为原始列名 ...原创 2018-06-25 17:39:04 · 2073 阅读 · 0 评论 -
pandas+matplotlib——习题一
第一题1.1 导入数据并查看【切片】1.2 统计列[item_name]中每种商品出现的频率,绘制柱状图1.3 根据列 [odrder_id] 分组,求出每个订单花费的总金额。然后根据每笔订单的总金额和其商品的总数量画出散点图(如上)。第二题2.1 加载datasets下的tips.csv文件数据,并显示前五行记录2.2 在同一图中绘制:吸烟顾客与不吸烟顾客的消费金...原创 2018-07-19 17:24:04 · 2683 阅读 · 0 评论 -
pandas+matplotlib——习题二
作业一1.1 读取nlp文件夹下的labeledTraniData.tsv文件1.2 去掉html标签—切分成词/token—重组为新的句子1.3 将数据中的标点符号去掉(正则)1.4 文字转成小写–去掉停用词运行环境 jupyter notebook import matplotlib.pyplot as plt from pandas ...原创 2018-07-19 17:59:13 · 1150 阅读 · 0 评论 -
pandas+matplotlib——习题三
1. 导入数据并查看2. 删除 Unname:0列 和 Id列(两种方法)3 判断出数据集中 男孩名字、女孩名字谁多4 按照 Name 字段将数据集进行分组 并求和赋值给变量 names5 按照每个名字被使用的次数(Count)对上步中结果进行降序排序6 在数据集中,共出现了多少个名字?(不包含重复项,至少使用两种方法)运行环境 jupyter n...原创 2020-07-21 10:03:07 · 950 阅读 · 1 评论 -
pandas DataFrame表格(列)拼接(concat,append,join,merge)
文章目录一、pd.concat()二、df.append()三、df.join()四、pd.merge()方法名说明concat()axis设置用于df间行拼接(增加行)或列拼接(增加列)进行内联或外联拼接操作append()dataframe数据类型的方法,提供了行方向(堆叠行)的拼接操作join()dataframe数据类型的方法,提供了列方向(拼接列)...原创 2019-09-19 15:03:20 · 65314 阅读 · 10 评论 -
Pandas-Numpy-Matplotlib-PyEcharts——综合案例(豆瓣电影Top_250数据分析)
一、豆瓣电影数据分析 1.1 开发环境的准备 开发工具:pycharm/Anaconda5.1/Jupyter Notebook Python版本:3.6 第三方模块包: numpy 1.13.3 pandas 0.20.3 beautifulsoup4 4.6.0 ...原创 2018-05-31 14:30:51 · 7854 阅读 · 2 评论 -
Matplotlib—数据可视化
一、Matplotlib 入门 初识mtaplotlib1 简介:Matplotlib 是开源项目 官网:http://matplotlib.org2 Matplotlib 基本绘图 调用figure 创建一个绘图对象:plt.figure(figsize=(8,4)) figsize:指定绘图对象的宽度和高度 单位,英寸 dpi: 绘图分辨率,...原创 2018-06-02 15:36:25 · 691 阅读 · 0 评论 -
Matplotllib——绘制复杂函数图与三维图
一、绘制 f(x)=sin2(x−2)e−x2f(x)=sin2(x−2)e−x2f(x) = sin^2(x-2)e^{-x^2} 函数图代码1:import matplotlib.pyplot as pltimport numpy as npplt.rcParams["font.sans-serif"]=['SimHei'] # 用于正常显示中文标签plt.rcParams[...原创 2018-07-01 11:04:19 · 11454 阅读 · 2 评论 -
Matplotlib——综合演练
一、绘制三角函数 1.1快速创建三角函数: 用到了Matplotlib和numpy模块,linspace在(-π,π)之间绘制。 代码: import matplotlib.pyplot as plt import numpy as np X = np.linspace(-np.pi,np.pi,256,endpoint = True) #np...原创 2018-05-29 22:20:32 · 528 阅读 · 0 评论 -
matplotlib + pandas——数据可视化
一、利用pandas进行数据分析 + matplotlib进行可视化展示 1.1 第一个绘图 (原本在matplotlib中需要几段代码,在pandas中只需要一行代码) import pandas as pdimport numpy as npimport matplotlib.pyplot as plts = pd.Series( ...原创 2018-05-31 11:13:26 · 8676 阅读 · 2 评论 -
Python + PyEcharts——数据可视化
一、第一个PyEcharts图标 1 安装:    &a原创 2018-05-31 10:00:05 · 73075 阅读 · 28 评论 -
Scipy基础+进阶
Python科学计算库—Scipy一、Scipy 入门 1.1、Scipy 简介及安装官网:http://www.scipy.org/SciPy安装:在C:\Python27\Scripts下打开cmd执行:执行:pip install scipy 1.2、安装Anaconda及环境搭建(举例演示)创建环境:conda create -n env_name py...原创 2018-05-25 14:31:49 · 5605 阅读 · 0 评论 -
Scipy 高级
一、scipy在线性代数应用 使用 scipy.linalg 模块提供标准线性代数运算 网址:http://docs.scipy.org/doc/scipy/reference/linalg.html#module-scipy.linalg 计算行列式函数: linalg.det(arr) 计算矩阵的逆矩阵函数:linalg.inv(arr) ...原创 2018-05-25 21:14:31 · 1385 阅读 · 0 评论 -
Python 与 Matlab 矩阵操作对应表
文章目录Matlab、python函数对应表MATLABMatlabPythonnumel(X)X.sizesize(X, 2)X.shape[1]A.*BA*BA*BA.dot(B)X’X.conj().TX(1:5, :)X[0:5, :]X(1:2, 4:7)X[0:2,3:7]repmat(X, 2, 3)np...原创 2019-08-06 14:11:54 · 2803 阅读 · 0 评论 -
Matlab 函数circShift、psf2otf 的 python(Numpy)实现
Matlab 函数circShift、psf2otf 的python实现这两个函数主要用于模糊图像的去卷积中,原文请查看:https://blog.csdn.net/wsp_1138886114/article/details/95024180在自定义卷积核中需要用到import numpy as npimport cv2def circShift(array,K): "...原创 2019-07-28 09:40:52 · 5143 阅读 · 0 评论