notebook python 内嵌 数据库_python数据分析:在jupyter notebook上使用pythonSQL做数据分析...

python数据分析:在jupyter notebook上使用python&SQL做数据分析

发布时间:2019-01-14 21:14,

浏览次数:1143

, 标签:

python

jupyter

notebook

SQL

类似于在jupyter上使用R语言,同样可以使用SQL语句:

详细见github项目:https://github.com/catherinedevlin/ipython-sql

<>安装ipython-sql

pip install ipython-sql

<>载入

%load_ext sql

<>连接数据库 同 SQLAlchemy

* postgresql://will:[email protected]/shakes

* mysql+pymysql://scott:[email protected]/foo

* oracle://scott:[email protected]:1521/sidname

* sqlite://

* sqlite:///foo.db

*

mssql+pyodbc://username:[email protected]/databasedriver=SQL+Server+Native+Client+11.0

我是使用的是mysql,本地链接,用户名ffzs,密码666666,test数据库:

%sql mysql+pymysql://ffzs:[email protected]/test

<>简单使用

%matplotlib inline import matplotlib.pyplot as plt plt.style.use('bmh')

<>1.显示表

%%sql show tables;

<>2.选取steam_users表的前5行

df = %sql select * from steam_users limit 5 df.DataFrame()

<>3.计算表中包含多少游戏数和玩家数

%%sql select count(distinct Game) gameCount, count(distinct UserID) userCount

from steam_users

<>4.筛选出拥有用户前十的游戏

%%sql data << select Game , count(1) as count from steam_users where Action=

'play' group by Game order by count desc limit 10

data.DataFrame()[::-1].plot.barh("Game","count")

<>5.筛选出被玩总时长前十的游戏

%%sql playHour << select Game,sum(Hours) as playHour from steam_users where

Action="play" group by Game order by playHour desc limit 10

playHour.DataFrame()[::-1].plot.barh('Game', 'playHour')

<>6.筛选出被玩平均时长前十的游戏

%%sql avgHour << select Game, avg(Hours) as avgHour from steam_users where

Action='play' group by Game order by avgHour desc limit 10

avgHour.DataFrame()[::-1].plot.barh('Game','avgHour')

<>7.平均时长前十的游戏的游戏人数

%%sql select Game, avg(Hours) as avgHour, count(1) as count from steam_users

where Action='play' group by Game order by avgHour desc limit 10

联系join on:

%%sql select a.Game, avgHour, count from (select Game, avg(Hours) as avgHour

from steam_users where Action='play' group by Game order by avgHour desc limit

10) a left join (select Game ,count(1) as count from steam_users where Action=

'play' group by Game) b on a.Game=b.Game order by avgHour desc

可见平均时长长的游戏大多是小众游戏

<>8.玩家人数大于500人的游戏的个数(having使用)

%%sql select count(1) as count from (select Game, count(1) as count from

steam_userswhere Action='play' group by Game having count > 500) a

<>9.拥有游戏数量前十用户

%%sql games << select UserID, count(1) count from steam_users where Action=

'play' group by UserID order by count desc limit 10

games.DataFrame()[::-1].plot.barh('UserID','count')

<>10.游戏总时长最多5个用户和最少5个用户(union使用)

%%sql (select UserID, sum(Hours) as allHour from steam_users where Action=

'play' group by UserID order by allHour desc limit 5) union (select UserID, sum(

Hours) as allHour from steam_users where Action='play' group by UserID order by

allHourlimit 5)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/503583.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php优化上百次foreach,php – 优化数千个项目的foreach

我在一组25,000个结果中运行下面的代码.我需要优化它,因为我达到了内存限制.$oldproducts Oldproduct::model()->findAll(); /*(here i have 25,000 results)*/foreach($oldproducts as $oldproduct) :$criteria new CDbCriteria;$criteria->compare(someid, $oldprodu…

二陈丸配什么吃不上火_宝妈一个人带孩子是什么感觉?前三种场景,不知道是怎么熬过来的...

导语&#xff1a;很多人认为一个家庭主妇很轻松&#xff0c;每天就带带孩子&#xff0c;其他什么都不需要做&#xff0c;远远没有那些人说的那么辛苦&#xff0c;无论是老公还是很多婆婆都认为是在家享福呢&#xff0c;经常就会甩出一句话“每天不就带个孩子吗&#xff1f;至于…

php怎么分割页面,将一个页面分成多个html文件(静态html分割页面)

静态html分割页面&#xff0c;达到类似PHP等动态页面的include引入页面效果。用html把首页分成三个文件web.png在PHP、JSP等动态页面开发中&#xff0c;页面里引入其它页面只需include()进来就可以实现页面的分离。如果用HTML&#xff0c;也是可以实现页面的分割的。两种方法&a…

zbar扫描无法近距离扫码_生意好时最怕收银出故障,这几个扫码枪的常见问题你一定要知道...

文|杭州丰收收不怕生意不够好&#xff0c;就怕生意好时收银出故障。这几天丰收收经常接到询问&#xff0c;说自己商铺所在的位置信号非常不好&#xff0c;很多客户等了很久没法付款&#xff0c;索性就不买了。看着上门的生意就这么走了&#xff0c;心里很不是滋味。遭遇这种经历…

matlab zigzag算法,ZIGZAG扫描的MATLAB实现

用MATLAB实现MPEG中的 ZIG-ZAG 扫描。觉得有点研究价值&#xff0c;实现的方法也很巧妙。下面给一个参照MPEG提供的方法&#xff1a;&#xff1d;&#xff1d;&#xff1d;function bzigzag(a)% 这是参照 University of California 提供的 MPEG 源代码的基础上编制的。% Copyri…

python工业自动化仿真_ABAQUS 中基于 Python 脚本语言开发实现仿真自动化操作

进行 ABAQUS 开发编程前&#xff0c;首先需要明白 ABAQUS 有限元分析思路和基本流程&#xff0c;以及 Python 基本语法和面向对象编程有基本的认识&#xff0c;下面是 Python 和 ABAQUS 的开发模板&#xff1a;# 注释说明本程序需要实现的项目内容和功能##--------------------…

你觉得外观模式和代理模式的联系和区别是什么?_GoF23种设计模式

UML泛化&#xff08;继承非抽象类&#xff09;&#xff1a;带空心三角形的直线表示实现&#xff08;继承抽象类&#xff0c;类实现接口&#xff09;&#xff1a;带空心三角形的虚线表示依赖&#xff1a;类与类之间最弱的关系&#xff0c;依赖可以简单的理解一个类使用了另一个类…

java url headers,Java CloseableHttpResponse.getHeaders方法代码示例

import org.apache.http.client.methods.CloseableHttpResponse; //导入方法依赖的package包/类/*** Makes a HTTP request to the given URL using the given request body,* parameters and HTTP headers. The parameters are used as URL parameters,* but if theres a para…

python tvtk库_PyCharm创建虚拟环境 和 TVTK库的安装

注&#xff1a;示例系统环境&#xff1a;Windows10 64位 Anaconda3&#xff1a;昨天安装TVTK库遇到些麻烦&#xff0c;当时随便将库下到个文件夹安装后(没找到VENV文件夹...)&#xff0c;进行测试&#xff1a;from tvtk.tools import tvtk_doc结果显示No module named ‘trait…

反注入技术:防范非法 Call 调用的探讨

DLL 注入是一种常见的技术&#xff0c;用于向目标进程注入外部的动态链接库&#xff08;DLL&#xff09;&#xff0c;以执行某些特定的操作。这种技术在恶意软件、游戏作弊等场景中被广泛使用&#xff0c;因此&#xff0c;研究和实施一些反注入技术对于提高应用程序的安全性是至…

python中的字体英文名_获取中文字体的英文名字

(方法在分割线后面&#xff0c;前面叙事)今天用了很久电脑&#xff0c;突然就觉得看着Windows下Chrome的字体觉得很不舒服&#xff0c;跟Mac下的差太远了&#xff0c;于是就开始折腾怎么设置浏览器字体。先讲一下流程&#xff0c;我的操作方案是&#xff1a;下载自己喜欢的字体…

java汉字如何通过字节传输,求助,java中怎么用字节流读写汉字

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼import java.io.*;public class ReadAndWrite{public static void main(String args[]){FileInputStream fin;FileOutputStream fout;int ch;try{int b;fin new FileInputStream(FileDescriptor.in);fout new FileOutputStream(F…

python 元类的call总结_Python 类与元类的深度挖掘 I【经验】

上一篇介绍了 Python 枚举类型的标准库&#xff0c;除了考虑到其实用性&#xff0c;还有一个重要的原因是其实现过程是一个非常好的学习、理解 Python 类与元类的例子。因此接下来两篇就以此为例&#xff0c;深入挖掘 Python 中类与元类背后的机制。翻开任何一本 Python 教程&a…

tp5 php跨域,TP5.1解决跨域

TP5.1解决跨域博客说明文章所涉及的资料来自互联网整理和个人总结&#xff0c;意在于个人学习和经验汇总&#xff0c;如有什么地方侵权&#xff0c;请联系本人删除&#xff0c;谢谢&#xff01;介绍在前后端分离开发的时候就会遇到跨域的问题&#xff0c;在本地调试的时候可能不…

python中的pow怎么使用_python中的pow函数怎么用

描述pow() 方法返回 xy(x的y次方) 的值。语法以下是 math 模块 pow() 方法的语法:import mathmath.pow( x, y )内置的 pow() 方法pow(x, y[, z])函数是计算x的y次方&#xff0c;如果z在存在&#xff0c;则再对结果进行取模&#xff0c;其结果等效于pow(x,y) %z注意&#xff1a;…

nginx 配置php版本号,隐藏Apache、nginx和PHP的版本号的配置方法

最近提示说有漏洞&#xff0c;暴露apache、nginx和php的版本号。网上搜了下&#xff0c;整理的方法如下&#xff1a;首先说apache在http.conf文件里添加下面两行&#xff0c;默认是没有的ServerSignature OffServerTokens ProdServerSignature出现在Apache所产生的像404页面、目…

python爬取电子病历_利用 BERT 模型解析电子病历

项目原始地址项目地址本项目改编自此 Github 项目&#xff0c;鸣谢作者。问题描述我们希望能从患者住院期间的临床记录来预测该患者未来30天内是否会再次入院&#xff0c;该预测可以辅助医生更好的选择治疗方案并对手术风险进行评估。在临床中治疗手段常见而预后情况难以控制管…

python获取坐标颜色,python – 根据一组坐标的数据着色地图

您的第一种方法称为Voronoi diagramm对于使用D3库的javascipt,这种图表有一个解决方案为了使这个解决方案完整,我在这里粘贴M.Bostock示例中的代码var w 1280,h 800;var projection d3.geo.azimuthal().mode("equidistant").origin([-98, 38]).scale(1400).transl…

最少交换次数python_leetcode第200周赛第三题leetcode1536. 排布二进制网格的最少交换次数...

leetcode1536. 排布二进制网格的最少交换次数给你一个 n x n 的二进制网格 grid&#xff0c;每一次操作中&#xff0c;你可以选择网格的 相邻两行 进行交换。一个符合要求的网格需要满足主对角线以上的格子全部都是 0 。请你返回使网格满足要求的最少操作次数&#xff0c;如果无…

php常用功能代码,10段PHP常用功能代码(1)_PHP教程

1、使用PHP Mail函数发送Email$to "viralpatel.netgmail.com"; $subject "VIRALPATEL.net"; $body "Body of your message here you can use HTML too. e.g. &#xfe64;br&#xfe65; &#xfe64;b&#xfe65; Bold &#xfe64;/b&#xfe6…