
python
python数据分析
Jayboy.chen
人生苦短,学海无涯!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
python调用SCP向服务器上传文件
将指定目录的文件上传到服务器指定目录直接上代码:import paramiko # 用于调用scp命令from scp import SCPClient# remote_path远程服务器目录# file_path本地文件夹路径# img_name是file_path本地文件夹路径下面的文件名称def upload_server(ip,username,password,img_name, remote_path, file_path):原创 2021-03-11 00:14:35 · 861 阅读 · 1 评论 -
python排序算法(插入排序算法)
插入排序插入排序(英语:Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。插入排序算法实现def insert_sort(alist): #从第二个位置,即下标为1的元素开始向前插入 for...原创 2019-09-09 10:02:40 · 223 阅读 · 0 评论 -
python中的树与算法(基础篇)
树与树算法----(树的概念)树(tree)是一种抽象数据类型(ADT)或是实作这种抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合。它是由n(n>=1)个有限节点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。1.树的特点每个节点有零个或多个子节点;没有父节点的节点称为根节点;每一个非根节点有且只有一个父节点;...原创 2019-09-08 02:51:06 · 488 阅读 · 0 评论 -
python搜索算法原理篇(二分法查找)
搜索算法搜索是在一个项目集合中找到一个特定项目的算法过程。搜索通常的答案是真的或假的,因为该项目是否存在。 搜索的几种常见方法:顺序查找、二分法查找、二叉树查找、哈希查找。二分法查找二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。二分法查找原理假设表中元素是按升序排列,将表...原创 2019-09-07 02:03:31 · 373 阅读 · 0 评论 -
python冒泡排序(基础知识)
冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。冒泡排序算法的实现原理:比较相邻的元素。如果第一个比第二个大(升序),就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最...原创 2019-09-07 01:25:23 · 1666 阅读 · 0 评论 -
python-deque(双端队列)的实现原理
双端队列(deque)-简介双端队列(deque,全名double-ended queue),是一种具有队列和栈的性质的数据结构。双端队列中的元素可以从两端弹出,其限定插入和删除操作在表的两端进行。双端队列可以在队列任意一端入队和出队。1.双端队列的基本操作Deque() 创建一个空的双端队列add_front(item) 从队头部加入一个item元素add_rear(item) ...原创 2019-09-06 23:36:48 · 2137 阅读 · 4 评论 -
python-Queue队列的实现原理
队列(Queue)-简介队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。队列是一种先进先出的(First In First Out)的线性表,简称FIFO。允许插入的一端为队尾,允许删除的一端为队头。队列不允许在中间部位进行操作!假设队列是q=(a1,a2,……,an),那么a1就是队头元素,而an是队尾元素。这样我们就可以删除时,总是从a1开始,而插入时,总是...原创 2019-09-06 23:37:10 · 1312 阅读 · 0 评论 -
python-Stack栈的实现原理
栈-简介栈(stack),有些地方称为堆栈,是一种容器,可存入数据元素、访问元素、删除元素,它的特点在于只能允许在容器的一端(称为栈top顶端指标)进行加入数据(push)和输出数据(pop)的运算。没有了位置概念,保证任何时候可以访问、删除的元素都是此前最后存入的那个元素,确定了一种默认的访问顺序。由于栈数据结构只允许在一端进行操作,因而按照后进先出的原理运作,如下图所示:1.栈结构实现...原创 2019-09-06 23:37:00 · 553 阅读 · 0 评论 -
python中的链表(双向链表)
双向链表一种更复杂的链表是“双向链表”或“双面链表”。每个节点有两个链接:一个指向前一个节点,当此节点为第一个节点时,指向空值;而另一个指向下一个节点,当此节点为最后一个节点时,指向空值。基本操作is_empty() 链表是否为空length() 链表长度travel() 遍历链表add(item) 链表头部添加append(item) 链表尾部添加insert(pos, it...原创 2019-09-05 04:03:04 · 165 阅读 · 0 评论 -
python中的链表(单向链表)
链表1.为什么需要链表?顺序表的构建需要预先知道数据大小来申请连续的存储空间,而在进行扩充时又需要进行数据的搬迁,所以使用起来并不是很灵活。链表结构可以充分利用计算机内存空间,实现灵活的内存动态管理。2.链表的定义链表(Linked list)是一种常见的基础数据结构,是一种线性表,但是不像顺序表一样连续存储数据,而是在每一个节点(数据存储单元)里存放下一个节点的位置信息(即地址)。单...原创 2019-09-05 04:03:18 · 241 阅读 · 0 评论 -
python中的顺序表-(基础篇)
顺序表在程序中,经常需要将一组(通常是同为某个类型的)数据元素作为整体管理和使用,需要创建这种元素组,用变量记录它们,传进传出函数等。一组数据中包含的元素个数可能发生变化(可以增加或删除元素)。对于这种需求,最简单的解决方案便是将这样一组元素看成一个序列,用元素在序列里的位置和顺序,表示实际应用中的某种有意义的信息,或者表示数据之间的某种关系。这样的一组序列元素的组织形式,我们可以将其抽象为...原创 2019-09-05 02:55:59 · 1446 阅读 · 0 评论 -
机器学习之贝叶斯算法(Why贝叶斯?)
上一篇我使用贝叶斯算法实现了拼写纠正实例,没有详细介绍贝叶斯算法,所以特地找了篇基础知识,好理解贝叶斯算法能解决什么问题,应用场景在哪方面。贝叶斯简介:贝叶斯(约1701-1761) Thomas Bayes,英国数学家贝叶斯方法源于他生前为解决一个“逆概”问题写的一篇文章生不逢时,死后它的作品才被世人认可贝叶斯贝叶斯要解决的问题:正向概率:假设袋子里面有N个白球,M个黑球,你伸手进...转载 2019-09-07 00:55:19 · 275 阅读 · 0 评论 -
机器学习之贝叶斯算法(三)
贝叶斯贝叶斯公式:理论部分知识我这里就不啰嗦了,直接上代码:使用贝叶斯算法实现一个拼写检查器:import re, collections # 正则匹配def words(text): return re.findall('[a-z]+', text.lower()) def train(features): model = collections.defa...原创 2019-03-26 22:24:43 · 214 阅读 · 0 评论 -
机器学习之决策树算法(二)
前言一、机器学习中分类和预测算法的评估,那么是根据哪些因素来评估一个算法的好坏和优越:准确性速度强壮行可规模性可解释性决策树-监督学习决策树是一个类似于流程图的树结构:每个内部结点表示在一个属性上的测试,每个分支代表一个属性输出,而每个树叶结点代表类或类分布,树的最顶层是根结点。决策树的优缺点优点:直观,便于理解,小规模数据集有效缺点:处理连续变量不好,类别较多时,错误...原创 2019-03-26 21:55:31 · 233 阅读 · 0 评论 -
机器学习之回归算法篇(一)
前言一、什么是逻辑回归?logistic回归是一种广义的线性回归,通过构造回归函数,利用机器学习来实现分类或者预测。从大的类别上来说,逻辑回归是一种有监督的统计学习方法,主要用于对样本进行分类,逻辑回归也被称为广义线性回归模型,它与线性回归模型的形式基本上相同。理论知识不多说了,咋们直接上代码:import pandas as pdimport matplotlib.pyplot as ...原创 2019-03-26 20:55:43 · 165 阅读 · 0 评论 -
Python学习笔记之:Scikit-Learn机器学习基础
前言本文是我根据Scikit-learn官方API翻译理解所写,如果有什么地方翻译的不对,欢迎指正!!!一、监督学习Generalized Linear Models(广义线性模型)Linear and Quadratic Discriminant Analysis ( 线性和二次判别分析 )Kernel ridge regression ( 内核岭回归 )Support Vecto...原创 2018-10-31 15:45:13 · 2464 阅读 · 1 评论 -
python人工智能之:六边形矩阵热图程序实战篇(一)
前言这是一个六边形组件热图程序,主要用到的知识matplotlib、Numpy、Pandas,也就是python中的科学计算、数据分析以及可视化绘图库。注:根据Matlab组件程序改写,花了近一个半月左右的时间才完成六边形组件源码首先,导入开发所需依赖包"""Created on Thu Jun 21 14:32:47 2018子通道六边形图形绘制@author: Jayboy_C...原创 2019-07-09 13:21:18 · 1834 阅读 · 0 评论 -
python人工智能之:多边形矩阵热图程序实战篇(二)
前言这是一个六边形组件热图程序,大概花了我将近一个多月的时间才完成的,主要用到的知识有matplotlib、Numpy、Pandas,也就是python中的科学计算、数据分析以及可视化绘图库。六边形组件热图下面是这个程序运行效果图:六边形热图实现废话不说了,直接上代码。。。# -*- coding: utf-8 -*-"""Created on Thu Jun 21 14:32:...原创 2018-11-01 17:42:38 · 1288 阅读 · 0 评论 -
python文件上传功能
python实现文件上传功能下面是客户端和服务端实现文件上传功能的程序实现代码,具体实现请写的很详细了,这里我就不废话直接贴代码。欢迎留言优化程序代码!!!客户端文件上传功能代码import osimport socket# 创建客户端socket对象client_socket = socket.socket()# IP 和 Portaddress = (IP, Port)# ...原创 2019-10-18 10:57:13 · 1424 阅读 · 0 评论 -
python-pyqt5实现日历小部件
python实现日历小部件python几十行代码实现日历小部件,真是给力!!先看效果图:下面我把源码也贴出来:from PyQt5.QtWidgets import (QWidget, QCalendarWidget, QLabel, QApplication, QVBoxLayout)from PyQt5.QtCore imp...原创 2019-04-12 00:07:33 · 1407 阅读 · 2 评论 -
python-pyqt5实现贪吃蛇游戏
前言-小游戏Demo开发环境:win10开发工具:pycharm + pyqt5我这里就直接上代码了。。还有很多地方可以改进!欢迎大家多多指点from pygame.locals import *from random import randintimport pygameimport timeclass Apple: x = 0 y = 0 step =...原创 2019-04-11 23:58:27 · 1432 阅读 · 0 评论 -
python中的闭包、装饰器(decorator)
闭包什么是闭包?在函数内部再定义一个函数,并且这个函数用到了外边函数的变量,那么将这个函数以及用到的一些变量称之为闭包。所谓闭包:就是在一个函数内定义了一个函数f,并且这个函数f引用外部变量,在把这个函数f当做返回值返回闭包demo#定义一个函数def test(number): def test_in(number_in): print("in test...原创 2019-09-09 12:41:18 · 131 阅读 · 0 评论 -
python中的生成器、迭代器(基础篇)
什么是生成器?通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不断推算出后续的元素呢?这样就不必创建完整的list,从而节省大量的空间。在Pytho...原创 2019-09-08 10:54:19 · 120 阅读 · 0 评论 -
python列表---(基础知识)
列表列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。1.列表的创建创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:list1 = ['asd', 'trf', 34, 453]list2 = [1...原创 2019-09-09 11:23:38 · 453 阅读 · 0 评论 -
python集成Tesseract-OCR实现光学字符识别
Tesseract-ocr 简介Tesseract是一个开源的OCR(Optical Character Recognition,光学字符识别)引擎,可以识别多种格式的图像文件并将其转换成文本,目前已支持60多种语言(包括中文)。 Tesseract最初由HP公司开发,后来由Google维护。Tesseract-ocr 下载地址...原创 2019-10-18 10:28:52 · 1346 阅读 · 0 评论 -
Scrapy快速入门
Scrapy安装和学习文档1.安装:通过pip install scrapy即可安装。2.Scrapy官方文档:http://doc.scrapy.org/en/latest3.Scrapy中文文档:http://scrapy-chs.readthedocs.io/zh_CN/latest/index.html注意:在ubuntu上安装scrapy之前,需要先安装以下依赖: sudo ...原创 2019-10-18 20:37:05 · 406 阅读 · 0 评论 -
Numpy复习总结(一)
本篇文章主要是复习Numpy,如下:Numpy简介numpy(Numerical Python的简称)是高性能科学计算和数据分析的基础包,numpy最重要的一个特点就是其N维数组对象(ndarray),该对象是一个快速而灵活的大数据集容器。Numpy部分功能1.ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组。2.用于对整组数据进行快熟运算的标准数学函数。3...原创 2019-02-18 14:06:02 · 445 阅读 · 0 评论