自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 收藏
  • 关注

原创 pandas 转换与处理时间序列数据

转换字符串时间为标准时间pandas 时间相关的类:在多数情况下,对时间类型数据进行分析的前提就是将原本为字符串的时间转换为标准 时间类型。pandas 继承了 NumPy 库和 datetime 库的时间相关模块,提供了 6 种时间相关的类。Timestamp 类型:其中 Timestamp 作为时间类中最基础的,也是最为常用的。在多数情况下,时间相关的 字符串都会转换成为 Time...

2019-07-18 20:54:14 4906

原创 pandas 统计分析 描述DataFram数据

pandas 库基于 NumPy,自然也可以用这些函数对数据框进行描述性统计。pandas 还提供了更加便利的方法来计算均值 ,如 detail[‘amounts’].mean()pandas 还提供了一个方法叫作 describe,能够一次性得出数据框所有数值型特征的非空 值数目、均值、四分位数、标准差。detail[[‘counts’,‘amounts’]].describe()描述...

2019-07-18 20:22:45 901

原创 pandas 统计分析 DataFrame的常用操作

查看DataFrame的常用属性#DataFrame的基本属性data = pd.read_excel('output1.xlsx')print(type(data))# <class 'pandas.core.frame.DataFrame'>print(data.index)"""Int64Index([ 0, 1, 2, 3, 4, ...

2019-07-18 20:18:54 624

原创 pandas 统计分析 读写不同数据源的数据

统计分析是数据分析重要的组成部分,它几乎贯穿了整个数据分析的流程。 应用统计方法,将定量与定性结合,进行的研究活动叫统计分析。统计分析除了 包含单一数值型特征的数据集中趋势、离散趋势和峰度与偏度等统计知识外,还 包含了多个特征比较计算等知识。一、读写文本文件1、文本文件的读取:文本文件是一种由若干行字符构成的计算机文件,它是一种典型的顺序文 件。csv 是一种逗号分隔的文件格式,因为其分隔...

2019-07-18 19:22:37 495

原创 数组排序

直接排序sort 函数是最常用的排序方法。 arr.sort()sort 函数也可以指定一个 axis 参数,使得 sort 函数可以沿着指定轴对数据集进行排序。axis=1 为沿横轴排序; axis=0 为沿纵轴排序间接排序argsort 函数返回值为重新排序值的下标。 arr.argsort()lexsort 函数返回值是按照最后一个传入数据排序的。 np.lexsort((a,b...

2019-07-17 21:52:52 175

原创 Matplotlib数据可视化pyplot

绘图流程一.创建画布与创建子图第一部分主要作用是构建出一张空白的画布,并可以选择是否将整个画布划分为多个部分,方便在同一幅图上绘制多个图形的情况。最简单的绘图可以省略第一部分,而后直接在默认的画布上进行图形绘制F = plt.figure(figsize=(8, 8),dpi=80)#figsize指定画布大小800*800#dpi指定像素80F.add_subplot(2, 2,...

2019-07-17 21:52:12 305

原创 numpy读写操作

NumPy 文件读写主要有二进制的文件读写和文件列表形式的数据读写两种形式二进制的文件读写# 注意:存储时可以省略扩展名,但读取时不能省略扩展名import numpy as nparr1 = np.arange(12).reshape(3, 4)# save以二进制的格式保存数据np.save('x', arr1)# 以二进制的格式读取数据arr2 = np.load('...

2019-07-16 22:55:18 367

原创 ufunc 通用函数

通用函数(universal function),是一种能够对数组中所有元素进行操作的函数。以Num数组作为输出,因此不需要对数组每个元素都操作,比math库中的函数操作效率更高。四则运算:加(+)、减(-)、乘(*)、除(/)、幂(**)。数组间的四则运算表示对每个数组中的元素分别进行四则运算,所以形状必须相同。比较运算:>、<、==、>=、<=、!=。比较运算返回...

2019-07-16 22:34:41 607

原创 创建矩阵及矩阵之间的运算

import numpy as np# 一、创建矩阵# 1、mat函数A = np.mat([[1, 0, 1, 0], [-1, 2, 0, 1], [1, 0, 4, 1], [-1, -1, 2, 0]])print(A)"""[[ 1 0 1 0] [-1 2 0 1] [ 1 0 4...

2019-07-16 21:02:45 304

原创 组合数组 及 切割数组

组合数组import numpy as np# 1、组合数组# (1)hstack()和vstack()函数arr1 = np.arange(1, 6, 2) # [1 3 5]arr2 = np.arange(7, 12, 2) # [7 9 11]arr3 = np.hstack((arr1, arr2))print(arr3) # [ 1 3 5 7 9 11]...

2019-07-16 20:55:18 1315

原创 多维数组的索引和变换数组的形态

多维数组的索引import numpy as nparr = np.array([[1, 2, 3, 4, 5], [4, 5, 6, 7, 8], [7, 8, 9, 10, 11]])print(arr)"""[[ 1 2 3 4 5] [ 4 5 6 7 8] [ 7 8 9 10 11]]...

2019-07-16 20:38:32 529

原创 numpy生成随机数random的使用

无约束条件生成随机数组random.random()用于生成一个0-1的随机浮点数(1) random()格式:np.random.random(n)说明:生成一个数组,元素值域[0,1),其中n表示个数import numpy as npr1 = np.random.random(10)print(r1)[ 0.60254432 0.83757376 0.76985246 0...

2019-07-16 19:45:40 633

原创 numpy中数组的数据类型、数据类型的转换及自定义数组类型dtype

数组数据类型的转换value1 = np.bool(10)value2 = np.bool(0)print(value1, value2)# True Falsevalue3 = np.float32(True)print(value3)# 1.0定义数据类型例如:创建一个存储餐饮企业库存信息的数据类型。其中:用一个长度为40个字符的字符串来记录商品的名称。用一个64位...

2019-07-16 17:15:06 3242

原创 python中Numpy的数组创建

Numpy的主要对象是同种元素的多维数组特点:这是一个所有元素都是一种类型,通过一个正整数元组索引的元素表格Numpy底层是使用C编写的import numpy as nparr1 = np.array([1, 2, 3])# 数组的秩# 轴的个数称为秩# 轴(axes)是数组的维度print(arr1.ndim) # 结论:一维数组秩为1,二维数组秩为2# 数组的维度...

2019-07-16 17:11:57 4185

原创 反反爬虫相关机制

通常防止爬虫被反主要有以下几个策略:动态设置User-Agent(随机切换User-Agent,模拟不同用户的浏览器信息)禁用Cookies(也就是不启用cookies middleware,不向Server发送cookies,有些网站通过cookie的使用发现爬虫行为)可以通过COOKIES_ENABLED 控制 CookiesMiddleware 开启或关闭设置延迟下载(防止访问过于频...

2019-07-14 22:52:53 4379

原创 Scrapy框架

Scrapy是用纯Python实现一个为了爬取网站数据、提取结构性数据而编写的应用框架,用途非常广泛。框架的力量,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便。Scrapy 使用了 Twisted’twɪstɪd异步网络框架来处理网络通讯,可以加快我们的下载速度,不用自己去实现异步框架,并且包含了各种中间件接口,可以灵活的完成各种需求。Scra...

2019-07-14 22:31:20 188

原创 Selenium&PhantomJS

快速入门Selenium 库里有个叫 WebDriver 的 API。WebDriver 有点儿像可以加载网站的浏览器,但是它也可以像 BeautifulSoup 或者其他 Selector 对象一样用来查找页面元素,与页面上的元素进行交互 (发送文本、点击等),以及执行其他动作来运行网络爬虫。# 导入 webdriverfrom selenium import webdriverimpo...

2019-07-14 22:12:30 648

原创 编码转换

字符串编码转换这是中国程序员最苦逼的地方,什么乱码之类的几乎都是由汉字引起的。其实编码问题很好搞定,只要记住一点:任何平台的任何编码 都能和 Unicode 互相转换UTF-8 与 GBK 互相转换,那就先把UTF-8转换成Unicode,再从Unicode转换成GBK,反之同理。关于转码:这是一个 UTF-8 编码的字符串utf8Str = “你好地球”将 UTF-8 编码的...

2019-07-14 17:31:15 376

原创 python中的JSON模块

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,它使得人们很容易的进行阅读和编写。同时也方便了机器进行解析和生成。适用于进行数据交互的场景,比如网站前台与后台之间的数据交互。JSON和XML的比较可谓不相上下。Python 2.7中自带了JSON模块,直接import json就可以使用了。官方文档:http://docs.python.org/...

2019-07-14 17:28:37 408

原创 xpath 和 python中lxml中的xpath

一、什么是XPath?XPath (XML Path Language) 是一门在 XML 文档中查找信息的语言,可用来在 XML 文档中对元素和属性进行遍历。W3School官方文档:http://www.w3school.com.cn/xpath/index.asp二、XPath 开发工具开源的XPath表达式编辑工具:XMLQuire(XML格式文件可用)Chrome插件 XPat...

2019-07-14 17:18:32 218

转载 正则表达式re模块

一、简介正则表达式本身是一种小型的、高度专业化的编程语言,而在python中,通过内嵌集成re模块,程序媛们可以直接调用来实现正则匹配。正则表达式模式被编译成一系列的字节码,然后由用C编写的匹配引擎执行。二、正则表达式中常用的字符含义1、普通字符和11个元字符:. 匹配任意除换行符"\n"外的字符\ 转义字符,使后一个字符改变原来的意思* 匹配前一个字符0或多次* 匹配前一个字符1次...

2019-07-14 16:43:03 183

原创 request的高级操作

文件上传import requestsurl = "http://httpbin.org/post"files= {"files":open("test.jpg","rb")}response = requests.post(url,files=files)print(response.text)获取cookieimport requestsresponse = requests...

2019-07-14 16:11:39 140

原创 requests的基本操作

requests的基本使用1. 简介:Requests是用python语言基于urllib编写的,采用的是Apache2 Licensed开源协议的HTTP库,Requests它会比urllib更加方便,可以节约我们大量的工作。2. 安装:pip install requests 或者直接用pycharm中的settings下的方法进行下载3. 使用:基于get请求:import...

2019-07-14 15:45:42 164

原创 cookie和sessio

服务器和客户端的交互仅限于请求/响应过程,结束之后便断开,在下一次请求时,服务器会认为新的客户端。为了维护他们之间的链接,让服务器知道这是前一个用户发送的请求,必须在一个地方保存客户端的信息。Cookie:通过在 客户端 记录的信息确定用户的身份。Session:通过在 服务器端 记录的信息确定用户的身份。...

2019-07-12 20:37:22 91

原创 HTTP和HTTPS

一、HTTP协议与HTTPS协议HTTP协议(HyperText Transfer Protocol,超文本传输协议):是一种发布和接收 HTML页面的方法。HTTPS协议(Hypertext Transfer Protocol over Secure Socket Layer)简单讲是HTTP的安全版,在HTTP下加入SSL层。SSL(Secure Sockets Layer 安全套接层)...

2019-07-12 20:36:43 204

原创 通用爬虫和聚焦爬虫

络爬虫可分为 通用爬虫 和 聚焦爬虫 两种。一、通用爬虫通用网络爬虫是捜索引擎抓取系统(Baidu、Google、Yahoo等)的重要组成部分。主要目的是将互联网上的网页下载到本地,形成一个互联网内容的镜像备份。二、通用搜索引擎(Search Engine)工作原理通用网络爬虫 从互联网中搜集网页,采集信息,这些网页信息用于为搜索引擎建立索引从而提供支持,它决定着整个引擎系统的内容是否丰富...

2019-07-12 20:31:09 349

原创 CSRF 跨站请求伪造

CSRF:CSRF跨站点请求伪造(Cross—Site Request Forgery)CSRF攻击者在用户已经登录目标网站之后,诱使用户访问一个攻击页面,利用目标网站对用户的信任,以用户身份在攻击页面对目标网站发起伪造用户操作的请求,达到攻击目的。CSRF攻击攻击原理及过程如下:用户C打开浏览器,访问受信任网站A,输入用户名和密码请求登录网站A;2.在用户信息通过验证后,网站A产生Coo...

2019-06-05 09:24:27 138

原创 MVC 和 MTV

1、MVCMVC模式就是把web应用分为模型(M),控制器©,视图(V)三层;他们之间以一种插件似的,松耦合的方式连接在一起。M:model 模型(django中models.py文件),与数据库进行交互。V: view 视图(django中templates目录),产生html页面。C:controller 控制器(django中urls.py和views.py文件),接收请求,做业务逻...

2019-06-05 09:19:29 198

原创 django Ajax

AjaxAJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML”。即使用Javascript语言与服务器进行异步交互,传输的数据为XML(当然,传输的数据不只是XML)还有JSON数据。AJAX还有一个最大的特点就是,当服务器响应时,不用刷新整个浏览器页面,而是可以局部刷新。这一特点给用户的感受是在不知不觉中完成请求和响应过程...

2019-06-04 20:53:07 1588 1

原创 django 会话 Session

(1)、session介绍Session是由服务端生成默认保存到数据库中的一段信息。对于敏感、重要的信息,建议要储在服务器端,不能存储在浏览器中。(2)、session原理第一次访问服务端时生成session并且生成一个随机字符串作为session的唯 一标识(sessionid)保存到数据库。然后将sessionid设置给cookie,并且返回给浏览器,当浏览器下次访问时携带sess...

2019-06-04 20:19:14 188

原创 django 会话Cookie

用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话。1、会话过程中要解决的问题因为http协议是无状态的(不保存状态就是,每次都是基于一个请求一个响应.每次请求和响应都跟上次没有关系.),就会产生这种现象,第一次我们登陆网站成功了,当点击购物车的时候就有可能访问的是别人的购物车。因为第一次和第二次访问是没有关系的。那怎么解决这个问题呢,我们可以在...

2019-06-03 22:27:21 126

原创 django form组件

Django 中的form组件实现了如下的功能1、生成页面可用的HTML标签2、对用户提交的数据进行校验3、保留上次输入内容使用form组件步骤(1)、导入form组件:from django improt forms(2)、编写类继承 form.Forms(3)、创建对象(4)、生成页面代码:#1、导入form组件from django import forms#2、编...

2019-06-03 20:28:51 162

原创 聚合

聚合就是指mysql中的 Avg、Sum、Max、… 聚合函数aggregate()是QuerySet 的一个终止子句,意思是说,它返回一个包含一些键值对的字典。键的名称是聚合值的标识符,值是计算出来的聚合值。键的名称是按照字段和聚合函数的名称自动生成出来的。#部门类class Dept(models.Model): id = models.AutoField(primary_ke...

2019-06-02 23:38:23 653

原创 关系字段 (一对一)增删改查

一对一的关联关系多用在当一张表的不同字段查询频次差距过大的情况下,将本可以存储在一张表的字段拆开放置在两张表中,然后将两张表建立一对一的关联关系。字段:OneToOneField字段参数to:设置要关联的表。to_field:设置要关联的字段。on_delete: 同ForeignKey字段。class IdCard(models.Model): num = models.Ch...

2019-06-02 22:40:40 360

原创 关系字段(多对多)增删改查

多对多用于表示多对多的关联关系。在数据库中通过第三张表来建立关联关系。字段: ManyToManyField字段参数to: 设置要关联的表注意: 正向查询和反向查询同一对多规则。例如 一个老师对应多个学生,一个学生对应多个老师#学生类class Student(models.Model): name = models.CharField(max_length=32) ...

2019-06-02 21:15:04 1595

原创 filter 筛选方法

obj=models.Student.objects #筛选age<33 >__gt stu=obj.filter(age__lt=33) print(stu) #<QuerySet [<Student: <Student obj name : 赵四>>, <Student: <Student ob...

2019-05-31 22:47:09 783

原创 django中models下的类对象常用方法

常用方法: stu_obj=models.Student.objects # #获取所有的学生对象 # stu=models.Student.objects.all() # print(stu) # #<QuerySet [<Student: <Student obj name : 赵四>>, <Student: <Stu...

2019-05-31 22:22:15 1873

原创 字段属性 字段约束

类型 描述AutoField 自动增长的IntegerField,通常不用指定,不指定时Django会自动创建属性名为id的自动增长属性。BooleanField 布尔字段,值为True或False。NullBooleanField 支持Null、True、False三种值。CharField(max_length=最大长度) 字符串。参数max_length表示最大字符个数。TextF...

2019-05-31 21:31:54 1428

原创 创建超级用户

一、创建超级用户有俩种方式1、利用命令行:python manage.py createsuperuser2、利用python工具(TOOLS)二、在admin.py中注册model类from django.contrib import admin#先调用models中的类(表)from app01.models import Subject,Studentadmin....

2019-05-31 19:59:34 3437

原创 关系字段(一对多)增 改 查 删

一对多外键类型在ORM中用来表示外键关联关系,一般把ForeignKey字段设置在‘一对多’中‘多’的一方。例如:一个学科对应多个学生,一个学生对应一个学科。from django.db import models# Create your models here.#学生类class Student(models.Model): name = models.CharField...

2019-05-31 19:39:36 423

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除