随笔分类 - Python
摘要:Spark TempView和GlobalTempView的区别 TempView和GlobalTempView在spark的Dataframe中经常使用,两者的区别和应用场景有什么不同。 我们以下面的例子比较下两者的不同。 from pyspark.sql import SparkSession
阅读全文
摘要:Spark 分组取Top N运算 大数据处理中,对数据分组后,取TopN是非常常见的运算。 下面我们以一个例子来展示spark如何进行分组取Top的运算。 1、RDD方法分组取TopN from pyspark import SparkContext sc = SparkContext() 准备数据
阅读全文
摘要:pandas、spark计算相关性系数速度对比 相关性计算有三种算法:pearson、spearman,kenall。 在pandas库中,对一个Dataframe,可以直接计算这三个算法的相关系数correlation,方法为:data.corr() 底层是依赖scipy库的算法。 为了提升计算速
阅读全文
摘要:机器学习决策树ID3算法,python实现代码 看到techflow介绍ID3算法,中间有代码示例。代码尝试执行力下,发现有错误。 https://www.cnblogs.com/techflow/p/12935130.html 经过整理,错误排查完毕。分享出来 {'courseA': {0: {'
阅读全文
摘要:在Linux平台下,pip install psutil 安装python psutil包,出现下面的错误: 原因是没有安装python-devel(ubuntu的为python-dev)的包。 如果是python3 则需要安装python3-devel,(Ubuntu为python3-dev) 安
阅读全文
摘要:Numpy 基础操作¶ 以numpy的基本数据例子来学习numpy基本数据处理方法 主要内容有: 创建数组 数组维度转换 数据选区和切片 数组数据计算 随机数 数据合并 数据统计计算 In [1]: import numpy as np 创建一维数组¶ In [2]: data = np.arang
阅读全文
摘要:Spark初步 从wordcount开始 spark中自带的example,有一个wordcount例子,我们逐步分析wordcount代码,开始我们的spark之旅。 准备工作 把README.md文件复制到当前的文件目录,启动jupyter,编写我们的代码。 README.md文件在Spark的
阅读全文
摘要:一、模式介绍 话题模式(Topic)基本思想和路由模式是一样的,只不过路由键支持模糊匹配,符号“#”匹配一个或多个词,符号“*”匹配不多不少一个词 话题模式相当于消息的模糊匹配,或者按照正则匹配。其中 # 是通配符,匹配一个或者多个单词 * 代表匹配一个单词 模式提醒: 当使用#来收消息时,会接收到
阅读全文
摘要:一、模式介绍 路由模式,与发布-订阅模式一样,消息发送到exchange中,消费者把队列绑定到exchange上。 这种模式在exchange上添加添加了一个路由键(routing-key),生产者发布消息的时候添加路由键(routing-key),消费者绑定队列到交换机时添加键值(routing-
阅读全文
摘要:一、模式介绍 在前面的例子中,消息直接发送到queue中。 现在介绍的模式,消息发送到exchange中,消费者把队列绑定到exchange上。 发布-订阅模式是把消息广播到每个消费者,每个消费者接收到的消息都是相同的。 一个生产者,多个消费者,每一个消费者都有自己的一个队列,生产者没有将消息直接发
阅读全文
摘要:一模式介绍 第一章节的生产-消费者模式,是非常简单的模式,一发一收。在实际的应用中,消费者有的时候需要工作较长的时间,则需要增加消费者。 队列模型: 这时mq实现了一下几个功能: rabbitmq循环调度,将消息循环发送给不同的消费者 消息确认机制。为了确保一个消息不会丢失,RabbitMQ支持消息
阅读全文
摘要:1 模式介绍 生产者-消费者模式是最简单的使用模式。 一个生产者P,给队列发送消息,一个消费者C来取队列的消息。 这里的队列长度不限,生产者和消费者都不用考虑队列的长度。 队列的模型图: 2 示例代码 生产者 1 #!/usr/bin/env python 2 import pika 3 4 par
阅读全文
摘要:1 前言 Django使用非常熟练了,各种API接口不在话下,全都搞定。为方便定位问题在每个API接口的的开始和返回的地方都加上了log打印,记录入参和返回值。 但是这样有一个问题,需要每个API接口都要写一遍,非常的不Pythonic,有没有更好的方法呢? 如果大家对装饰器熟悉的话,会想到这个方法
阅读全文
摘要:1 Celery简介 Celery是异步任务队列,可以独立于主进程运行,在主进程退出后,也不影响队列中的任务执行。 任务执行异常退出,重新启动后,会继续执行队列中的其他任务,同时可以缓存停止期间接收的工作任务,这个功能依赖于消息队列(MQ、Redis)。 1.1 Celery原理 Celery的架构
阅读全文
摘要:1 引子 1.1 神奇的Django中的models 我们先来看一段在Django项目中常用的代码: 设置数据库models代码: class Students(models.Model): name = models.CharField() age = models.IntegerField()
阅读全文
摘要:使用python的Flask框架时,参考《Flask Web开发》一书时,发现书中可以在全局使用Permission.FOLLOW变量。 但是自己在尝试是,确提示变量没有定义。经过搜索,找到了答案。 在Flask框架中,把变量注册到全局,有两个方法: 1、在主app或者蓝本中通过装饰器注册 2、添加
阅读全文
摘要:python判断文件和文件夹是否存在import osos.path.isfile('test.txt') #如果不存在就返回Falseos.path.exists(directory) #如果目录不存在就返回False
阅读全文
摘要:在使用python的工作中,需要使用到libxml2和libxslt库。原来在实际环境中已经安装完成了,但是在virtualenv中还没有,现在正在整理virtualenv的环境。下面把在virtualenv环境的安装步骤记录下来,方便大家参考。#1.正常环境安装在正常python环境中安装这两个库...
阅读全文
摘要:python 装饰器 使用场景
阅读全文
摘要:原文链接:http://blog.csdn.net/menglei8625/article/details/7494094目前我使用到的python中执行cmd的方式有三种:1. 使用os.system("cmd")这是最简单的一种方法,特点是执行的时候程序会打出cmd在linux上执行的信息。使用...
阅读全文