Python数据科学
学习记录Python常用方法技巧
Snfiltration
这个作者很懒,什么都没留下…
展开
-
Python bit位操作
Python bit位操作####################### python bit operate #######################"""note:int -> bit : bit(a)bit -> int : int(b,2)"""a = 22print("a:",a)b = bin(a)print("b:",b)c = b[3:]print("c:",c)d = int(c,2)print("d:",d)""" print resu.原创 2021-12-16 13:24:32 · 3823 阅读 · 0 评论 -
invalid value encountered in greater_equal
invalid value encountered in greater_equal这个问题是在python绘图的时候报的错,查了一下是数据有问题,有NAN数据,回头把数据处理了一下问题解决了附:NAN数据清洗https://blog.csdn.net/qq_34159047/article/details/114983490...原创 2021-03-18 16:36:53 · 973 阅读 · 0 评论 -
MATLAB/matlab代码转化为python代码
MATLAB/matlab代码转化为python代码方案1:使用smop下载:https://pypi.org/project/smop/0.26.2/转化效果MATLAB代码% matlab to pythonclc;clear;close all;varX = 1:1:200;Y = sin(2*pi*0.01*varX);figure;plot(varX,Y);title('matlab to python');xlabel('x');ylabel('y');Python原创 2020-12-23 19:17:40 · 14439 阅读 · 0 评论 -
Python/包之全集
标签,常用包C(Commonly),小众包M(Minority)[C] cython '''Cython是Python编程语言和扩展Cython编程语言(基于Pyrex)的优化静态编译器。'''[C] hdf5plugin [C] jupyter[C] libsvm [C] kivy[C] matplotlib [C] mayavi [C] mpi4py [C] mxnet [C] numba '''Numba是一个针对Python的实时编译器'''[C] numpy [C] o.原创 2020-12-23 18:58:05 · 147 阅读 · 0 评论 -
Python/scipy之希尔伯特变换hilbert
Python/scipy之希尔伯特变换hilbert具体来源可参考:scipy.signal.hilbert文档中说明返回的信号是Analytic signal解析信号,与Matlab返回信号形式相同。(ps 我使用转化一次时域对称信号,但是返回的值是实数,还没有深究是什么问题)...原创 2020-12-23 09:14:01 · 10517 阅读 · 0 评论 -
Python/虚数or复数的表示
Python/虚数or复数的表示1j表示虚数单位使用方法例如:3+4j2+1j注意不能直接写j,要有前面的数原创 2020-12-22 21:38:12 · 15271 阅读 · 0 评论 -
Python/matplotlib之绘制等高线
Python/matplotlib之绘制等高线contour([X, Y,] Z, [levels], **kwargs)可以绘制等高线,这次主要提的是[levels]参数,加该参数就可以绘制值是levels的等高线from mpl_toolkits.mplot3d import Axes3Dimport matplotlib.pyplot as pltimport numpy as npfrom matplotlib import cmfig=plt.figure()ax=fig.add原创 2020-12-16 19:54:10 · 684 阅读 · 0 评论 -
Python/numpy之np.r_[]和np.c_[]拼接函数
Python/numpy之np.r_[]和np.c_[]拼接函数np.r_[]连接行,列数相等的矩阵块按照行依次放好,即:np.r_[a2∗3,b2∗3]→c4∗3np.r\_[a_{2*3},b_{2*3}]\rightarrow c_{4*3}np.r_[a2∗3,b2∗3]→c4∗3np.c_[]连接列,行数相等的矩阵块按照列依次放好,即:np.c_[a2∗3,b2∗3]→c2∗6np.c\_[a_{2*3},b_{2*3}]\rightarrow c_{2*6}np.c_[a2∗3,原创 2020-12-16 19:31:04 · 591 阅读 · 0 评论 -
Python/numpy之ravel() 与flatten()
Python/numpy之ravel() 与flatten()ravel() ,flatten()功能相同,都是将数据从多维变为一维,区别在于一个是复制操作,一个是引用操作,类似于= ,copy(),检验的方法就是看修改数据原数据是否改变>>> import numpy as np>>> a = np.array([[1,2,3],[4,5,6]])>>> aarray([[1, 2, 3], [4, 5, 6]])>&g原创 2020-12-16 19:18:16 · 860 阅读 · 0 评论 -
Python/numpy之ravel()多维数据展平函数
Python/numpy之ravel()多维数据展平函数可参考官方文档numpy.ravel或末尾摘抄内容ravel()将多维数据展平为一维数据,可以选择不同的数据索引方式(见文档参数四个可选值)使用:>>> import numpy as np>>> a = np.array([[1,2,3],[4,5,6]])>>> aarray([[1, 2, 3], [4, 5, 6]])>>> a.ravel原创 2020-12-16 19:07:08 · 7172 阅读 · 1 评论 -
Python返回列表索引
Python返回列表索引index()函数>>> a = [11,22,33,44,55]>>> a.index(22)1原创 2020-12-04 15:00:48 · 1381 阅读 · 0 评论 -
Python/matplotlib之orientation改变方向
Python/matplotlib之orientation改变方向备忘:https://www.cnpython.com/qa/53302原创 2020-12-03 09:53:49 · 2045 阅读 · 0 评论 -
Python/matplotlib之显示十字光标
Python/matplotlib之显示十字光标显示十字光标主要是用到了Cursorfrom matplotlib.widgets import Cursorimport numpy as npimport matplotlib.pyplot as pltfig = plt.figure(figsize=(8, 6))ax = fig.add_subplot(111, facecolor='#FFDD94')x, y = 4*(np.random.rand(2, 100) - .5)原创 2020-11-30 19:59:13 · 1781 阅读 · 1 评论 -
Python/产生随机数
Python/产生随机数import randomrandom.random() #返回 [0.0, 1.0) 范围内的下一个随机浮点数。random.uniform(a, b) #返回一个随机浮点数 N ,当 a <= b 时 a <= N <= b ,当 b < a 时 b <= N <= a 。取决于等式 a + (b-a) * random() 中的浮点舍入,终点 b 可以包括或不包括在该范围内。random.expovariate(lambd)原创 2020-11-30 08:58:30 · 227 阅读 · 0 评论 -
Python关于round函数
Python关于round函数Python中的round函数是取近似的函数,常规使用并无不妥,但是取值与正常的思路还是有所不同的归结而言,0~4,6~9在Python2,3中,都是四舍五入规律,但是在Python2中,5是向0的远端取值,而Python3中5是向偶数端取值。举例而言:round(0.2) # 0round(0.5) # Python2中=1,Python3中=0round(1.5) # Python2中=2,Python3中=2可以参考Python 中关于 round 函数的原创 2020-11-29 11:31:06 · 530 阅读 · 0 评论 -
Python/OS之读取文件大小
python/OS之读取文件大小读取文件大小只需os的一句话:fsize = os.path.getsize(filePath)返回的是字节大小,得到这个值剩下就随意发挥为了显示的值更加人性化,可以让单位自适应变化,返回数值的同事返回单位即可。# 获取文件大小(可直接嵌入工程使用)# input:文件路径# output:文件大小,单位import osdef getFileSize(filePath): fsize = os.path.getsize(filePath) # 返回原创 2020-11-29 10:28:26 · 13657 阅读 · 1 评论 -
pyqt-GetOpenFileName获取的文件的路径加文件名如何分开
pyqt-GetOpenFileName获取的文件的路径加文件名如何分开用GetOpenFileName直接获得是文件的绝对路径+文件名称,有时需要分开使用,之前使用正则方式切开,或者用字符串从末端反向搜索到第一个/,这次使用的是split()+join()组合方式。pathMixName = fn.split('/') # 将fn按照/切分pathx = "/".join(pathMixName[0:len(pathMixName)-1]) # 假设切分后有n部分,将前n-1部分用/重新拼接,就原创 2020-11-29 08:54:36 · 3198 阅读 · 5 评论 -
pyqt-‘gbk‘ codec can‘t decode byte 0x80 in position 2: illegal multibyte sequence
pyqt-‘gbk’ codec can’t decode byte 0x80 in position 2: illegal multibyte sequence这并非pyqt专属问题,而是python打开文件时的编码问题,用utf-8编码方式打开即可fp = open('name.txt',encoding='utf-8')即加参数encoding='utf-8'就是告诉程序用utf-8的编码方式打开文件。...原创 2020-11-29 08:43:35 · 420 阅读 · 0 评论 -
Python/matplotlib之清空绘图
Python/matplotlib之清空绘图clf() # 清图。cla() # 清坐标轴。close() # 关窗口原创 2020-11-27 18:19:56 · 23789 阅读 · 1 评论 -
Python/Numpy之安装指定的版本
Python/Numpy之安装指定的版本安装方式:pip install numpy==版本号例如:pip install numpy==1.8问题出现的原因,一次安装matplotlib时,自动安装的1.9版本的numpy,运行时总是报错,报错信息在下方,查询后有说是numpy版本和python版本的问题,卸载重新安装后问题得到解决。(pyqt5s) F:\>python pyqtmat.py原创 2020-11-27 08:49:00 · 33044 阅读 · 0 评论 -
Python中a += 1与a = a + 1有什么区别?
Python中a += 1与a = a + 1有哪写区别?分析show me codepython中可变类型与不可变类型在python中有a += 1和a = a + 1这两种赋值方法,二者的区别是什么分析首先python中变量名是变量的标签,因此重新赋值在某种意义上是标签的重新指向,而在a += 1和a = a + 1两个问题上,更准确是说是对于不可变对象类型,是重新开辟空间,这个标签指向新的内存空间,对于可变对象类型,则是在原来内存上做操作。简言之:对于可变对象,a += 1 直接在原内原创 2020-10-22 20:02:37 · 22289 阅读 · 1 评论 -
sklearn——数据集
sklearn——数据集主要介绍sklearn中的数据集以及如何从帮助文档中导入数据集,查看数据集原创 2020-08-15 22:44:56 · 2826 阅读 · 0 评论 -
Python/趣味之windows徽标
Python/趣味之windows徽标做谱分析时得到一个图与windows徽标很相似1.代码依赖于三个常用包:numpy ,scipy,matplotlibimport numpy as npfrom scipy.fftpack import fftimport matplotlib.pyplot as pltvar = np.linspace(0,100,500)ss0 = np.cos(2*np.pi*1/5*var)ss1 = np.sin(2*np.pi*1/5*var)ss原创 2020-07-12 10:35:18 · 303 阅读 · 0 评论 -
Python/Numpy之点积叉积内积外积张量积
Python/Numpy之点积叉积内积外积张量积内积(内积、标量积、数量积、点积、点乘)a与b的内积为 a·b = |a||b|cos∠(a, b),结果为标量(一个数)外积(叉乘):向量a与b的外积a×b是一个向量,其长度等于|a×b| = |a||b|sin∠(a,b),其方向正交于a与b。并且,(a,b,a×b)构成右手系。(外积是张量积的一种形式)张量积:Kronecker product a⊗b1.内积、外积、张量积、对应元素相乘内积:innerx = np.dot(arr1,ar原创 2020-07-07 17:03:42 · 20711 阅读 · 4 评论 -
Python/Numpy之矩阵/数组/列表转换
Python/Numpy之矩阵与数组列表转换numpy矩阵数组、列表相比较对比“矩阵数组”与“列表”,“矩阵数组”一般指基于numpy的,由于numpy对其专门优化,因此速度很快,“列表”数python 内置的数据类型,通过嵌套也可以存储多维数据。数组中对元素的数据类型有同一性要求,列表则相对宽松numpy的矩阵matrix是数组array的分支,matrix的优势是对于矩阵操作相对简单a * b即矩阵乘法计算,对应数组则需np.dot(a,b),除此之外还有一系列的矩阵操作,如转置、共轭等。原创 2020-07-07 16:14:53 · 16175 阅读 · 0 评论 -
Python/Numpy之加减乘除开方平方幂值三角函数等算数运算
Python/Numpy之加减乘除开方平方幂值三角函数等算数运算import numpy as npa = np.array([1,2,3])b = np.array([2,3,4])加法:add1 = a + badd2 = np.add(a,b)减法:sub1 = a - bsub2 = np.subtract(a,b)乘法:mul1 = a * bmul2 = np.multiply(a,b)除法:div1 = a / bdiv2 = np.divide(a,b)原创 2020-07-07 12:31:28 · 7081 阅读 · 0 评论 -
Python/卷积运行状态图
Python/卷积运行状态图[正在规划中…]说明:卷积的运行状态有时有些难以判断,如果每次卷积运行的结果都可以直观的显示。将很容易看出运行状态1.思路概要2.代码3.使用及结果显示原创 2020-07-05 22:15:56 · 300 阅读 · 0 评论 -
Python/Numpy之数组拼接组合
一.矩阵拼接合并import numpy as np1.方法一appendarray3= np.append(array1,array2) 两个矩阵拉伸一维拼接array3= np.append(array1,array2,axis=0)两个矩阵按列拼接array3= np.append(array1,array2,axis=1)两个矩阵按行拼接2.方法二stackarray3= np.stack(array1,array2)两个矩阵组合为高维矩阵array3= np.vstack原创 2020-07-05 21:48:55 · 4212 阅读 · 0 评论 -
Python/TypeError: only integer scalar arrays can be converted to a scalar index
Python/TypeError: only integer scalar arrays can be converted to a scalar index根据实际解决,只有是numpy类型的数组,才能用列表/数组类型作为索引。即numpy_array[list/numpy_array]如果正在使用的不是numpy构建的,解决的方法是用np.array(your_array)。注:事先import numpy as np举例>>> a = [1,2,3]原创 2020-07-04 21:33:14 · 2694 阅读 · 0 评论 -
Python/Numpy判断数组是否相等
Python/numpy判断数组是否相等1.numpy判断数组是否相等一般是判断两个数组是否完全相等(array1 == array2) 返回两个矩阵中对应元素是否相等的逻辑值(array1 == array2).all()当两个矩阵所有对应元素相等,返回一个逻辑值True(array1 == array2).any()当两个矩阵所有任何一个对应元素相等,返回一个逻辑值True2.举例如下:>>> a = np.array([1,2,3])>>> b =原创 2020-07-04 18:05:17 · 40305 阅读 · 2 评论 -
Python/matplotlib绘图模板
Python/matplotlib绘图模板绘图一般有几部分是常用的操作项,将其归类建立模板,再绘图时直接通过模板绘图,打开或者关闭相应的开关即可完成修改代码#--coding:utf-8--import matplotlib.pyplot as plt# 构建数据import numpy as np x = np.linspace(0,5,200)y1 = np.sin(2*np.pi*x)y2 = np.cos(2*np.pi*x)# 正式绘图plt.figure()####原创 2020-07-03 21:23:39 · 790 阅读 · 0 评论 -
Python实例-绘制SIGMOD和ReLU
Python实例-绘制SIGMOD和ReLU代码:import numpy as npimport matplotlib.pyplot as pltx = np.linspace(-1,1,100)sigmod = 1/(1 + np.exp(-5*x)) relu = np.zeros(100)for i in range(50,100): relu[i] = x[i]plt.figure()plt.plot(x,sigmod,'--')plt.plot(x,relu,'-.原创 2020-07-03 20:09:09 · 410 阅读 · 0 评论 -
Python数据科学技能索引
Python数据科学技能索引1.Python基础Python/pip加速器:豆瓣源Python/matplotlib之【RuntimeWarning: More than 20 figures have been opened】Python/获取目录下文件数、文件夹数2.Python包-NumpyPython/Numpy之创建数组Python/Numpy之linspace用法3.Python计算机视觉-OpenCVPython/OpenCV基础4.Python深度学习Py原创 2020-07-03 09:10:09 · 537 阅读 · 0 评论 -
Python/Numpy之创建数组
Python/Numpy之创建数组import numpy as np1. 常规数组创建创建一维数组:a = np.array([1,2,3])创建二维数组:b = np.array([[1,2,3],[4,5,6]])2.规则数组创建创建全零数组:一维n元素:np.zeros(n)二维m*n元素:np.zeros([m,n])创建全1数组:一维n元素:np.ones(n)二维m*n元素:np.ones([m,n])创建空数组:一维n元素:np.empty(n)二原创 2020-07-03 09:03:09 · 4151 阅读 · 0 评论 -
Python/获取目录下文件数、文件夹数
Python/读取目录下文件数、文件夹数一句代码完成功能先导入os包:import os获取当前目录下的文件数目file_num = sum([os.path.isfile(listx) for listx in os.listdir("./")])获取当前目录下的文件夹数目fold_num = sum([os.path.isdir(listx) for listx in os.listdir("./")])获取任意路径path下的文件数目,文件夹数目,仅需替换listdi原创 2020-07-02 23:24:40 · 8288 阅读 · 5 评论 -
Python/pip加速器:豆瓣源
Python/pip加速器:豆瓣源pip方式安装官方源有些慢,可以使用豆瓣源用-i http://pypi.douban.com/simple/方式例如安装numpypip install numpy -i http://pypi.douban.com/simple/ --trusted-host=pypi.douban.com/simple原创 2020-07-02 20:46:53 · 1128 阅读 · 0 评论 -
Python/OpenCV基础之读取保存调整大小
Python/OpenCV基础安装:pip install opencv-python导入:import cv2读取文件:cv2.imread("./path/filename.png")灰度方式读取:cv.imread("./path/filename.png",0)图片保存:cv2.imwrite("./path",img)图片显示:cv2.imshow("fig_name",img)cv2.waitKey(0)...原创 2020-07-02 20:43:10 · 768 阅读 · 0 评论 -
Python/手写数字mnist数据集获取
Python/手写数字mnist数据集获取如果 使用 tensorflow`的话,是其自带的,通过以下方式可导入from tensorflow.keras.datasets import mnist如本地没有导入后运行的过程中会自动下载,可能会因为某些原因下载失败,再尝试几次。参考tensorflow官方github:https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/tutorials其他的可直接下载原创 2020-07-02 09:44:08 · 858 阅读 · 0 评论 -
Python/matplotlib之【RuntimeWarning: More than 20 figures have been opened】
Python/matplotlib之【RuntimeWarning: More than 20 figures have been opened】当绘图的过程中,建立了大量的figure,就会报错解决的方法(两种):及时关掉已存在的图像:plt.close("all")擦除figure上的图像以便复用:plt.cla()...原创 2020-07-02 09:34:30 · 1353 阅读 · 0 评论 -
Python/Numpy之linspace用法
linspace生成有序列表,重点在数据范围与数据个数上linspace(0,1,11),即从0到1闭区间,划分为11个数据点>>> import numpy as np>>> a = np.linspace(0,1,10)>>> aarray([0. , 0.11111111, 0.22222222, 0.33333333, 0.44444444, 0.55555556, 0.66666667, 0.7777777原创 2020-07-01 12:00:32 · 17275 阅读 · 0 评论