《Python数据科学手册》
《Python数据科学手册》【美】Jake VanderPlas著 陶俊杰译
Absorb what is useful, discard what is not, and add what is uniquel what own.(取其精华,去其糟粕,再加点自己的独创。)
本书在GitHub上开源:https://github.com/jakevdp/PythonDataScienceHandbook
作者在博客发布Notebook的HTML版本:https://jakevdp.github.io/PythonDataScienceHandbook/
精华总结+issue汇总
第一章 Ipython:超越Python
1.三种开发环境:
1)在线版Notebook编程环境——有浏览器就可学习编程知识,推荐想快速掌握知识的朋友使用。目前,有许多安装Python编程环境的Anaconda发行版的网络平台(PaaS),支持Jupyter Notebook编程环境,可以免费使用,如JupyterHub(https://tmpnb.org)、SageMathCloud(https://cloud.sagemath.com)、微软Azure(https://notebooks.azure.com/)
它们可以在线运行Notebook文件,编写调试运行代码,也支持文件的上传、下载、新建、删除,还可以运行Terminal工具。
另外,基于Github的Notebook,还有binder(https://mybinder.org)支持代码仓库一键部署。
类似的在线免费Notebook编程环境还有很多,特别推荐德国Yves Hilpisch博士的The Python Quants Group公司开发的Python Quants Platform(https://tpq.io/)。
Jupyter Notebook支持许多编程语言(Python、R、Scala、Julia、Haskell、Ruby......),甚至支持Kotlin(https://github.com/ligee/kotlin-jupyter)、Java 9的REPL新功能JShell(https://github.com/Bachmann1234/java9_kernel)。
2)在电脑上安装Anaconda发行版。由于网络问题,推荐清华大学TUNA镜像下载和更新Anaconda集成开发环境:https://mirror.tuna.tsinghua.edu.cn/help/anaconda/
3)适合了解Docker镜像(https://github.com/jupyter/docker-stacks),一键安装,省时省力。里面除了标准Anaconda开发环境,还支持Spark、TensorFlow的Notebook开发环境。
2.如果你需要一个 Python 入门教程,那么我推荐你阅读本书的姊妹篇 A Whirlwind Tour of the Python Language。
Python相关电子书下载(需要收费):Python书院——http://www.pythonlib.cn/
3.数据收集:bicloud的博客——数据挖掘博客收集
总结了人脸识别技术、深度学习文章、机器学习课程、深度学习课程、各种数据集。
4.GitChat:https://blog.csdn.net/valada?t=1
GitChat 是一个知识分享平台,通过这个平台我们希望改变知识的学习方式。如:如何科学的学习一门编程语言?
5.软件安装注意事项
Anaconda发现版有两种,选哪个?
1)Miniconda:只包含Python解释器和一个名为conda的命令行工具。conda是一个跨平台的程序包管理器,可以管理各种Python程序包,类似于Linux用户熟悉的apt和yum程序包管理器。
2)Anaconda:除了包含Python和conda之外,还同时绑定了四五百个科学计算程序包。所以有几个G大。
推荐:安装Miniconda,所有程序包手动安装(确认选择的是适合Python3的版本),安装包:conda install numpy pandas scikit-learn matplotlib seaborn ipython-notebook
6.第三方模块的安装问题:见我的另一篇博客:Python入门之第三方模块安装
7.用memory_profiler诊断内存的用量?
参看:《Python高性能编程》——2.9 用memory_profiler诊断内存的用量:https://m.aliyun.com/yunqi/articles/96841/
Issue:如果在运行的时候出现如下的gbk解码错误,解决方案是首先进入 memory_profiler.py文件中,找到第1127行(不同版本可能略有差别),
把with open(filename) as f: 更改成 with open(filename, encoding=’utf-8’) as f:!!!
8.网络资源汇总:
1)Ipython网站:http://ipython.org/
2)nbviewer网站:https://nbviewer.jupyter.org/
3)有趣的IPython Notebook集合(https://github.com/ipython/ipython/wiki/A-gallery-of-interesting-IPython-Notebooks)
第二章 Numpy入门
1.P54代码使用%matplotlib inline
import matplotlib.pyplot as plt
import seaborn; seaborn.set()
plt.hist(heights)
plt.title('Height Distribution of US Presidents')
plt.xlabel('height (cm)')
plt.ylabel('number');
在cmd的ipython窗口中执行不成功?执行%matplotlib inline就报错,而且直方图画不出来?
其中最后一句%matplotlib inline比较奇怪,而且无论你是用哪个python的IDE如spyder或者pycharm,这个地方都会报错,显示是invalid syntax(无效语法)。那为什么代码里面还是会有这一句呢?原来是这样的。
%matplotlib作用
是在使用jupyter notebook 或者 jupyter qtconsole的时候,才会经常用到%matplotlib,也就是说那一份代码可能就是别人使用jupyter notebook 或者 jupyter qtconsole进行编辑的。关于jupyter notebook是什么,可以参考这个链接:[Jupyter Notebook介绍、安装及使用教程][1]
而%matplotlib具体作用是当你调用matplotlib.pyplot的绘图函数plot()进行绘图的时候,或者生成一个figure画布的时候,可以直接在你的python console里面生成图像。
参看:Python关于%matplotlib inline——https://www.jianshu.com/p/2dda5bb8ce7d
Python--matplotlib绘图可视化知识点整理——https://www.cnblogs.com/zhizhan/p/5615947.html
《Python数据科学手册》的更多相关文章
- 简单物联网:外网访问内网路由器下树莓派Flask服务器
最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...
- 利用ssh反向代理以及autossh实现从外网连接内网服务器
前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...
- 外网访问内网Docker容器
外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...
- 外网访问内网SpringBoot
外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...
- 外网访问内网Elasticsearch WEB
外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...
- 怎样从外网访问内网Rails
外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...
- 怎样从外网访问内网Memcached数据库
外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...
- 怎样从外网访问内网CouchDB数据库
外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...
- 怎样从外网访问内网DB2数据库
外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...
- 怎样从外网访问内网OpenLDAP数据库
外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...
随机推荐
- Goland 激活码
实测有效,分享下 Goland
- 使用 bash 脚本把 GCE 的数据备份到 GCS
目录 一.Google Cloud Storge 介绍 1.1.四种存储类别的比较 1.2.需求 1.3.给虚拟机添加授权认证 二.备份操作 2.1 创建存储分区 2.2 上传对象到存储分区 2.3 ...
- python如何发布自已pip项目
python如何发布自已pip项目前言因为自已平时会把一个常用到逻辑写成一个工具python脚本,像关于时间字符串处理,像关于路径和文件夹遍历什么的工具.每一次新建一个项目的时候都要把这些工具程序复制 ...
- DOS & UNIX文件格式转换
1.使用vi编辑器 vi xxxx :set fileformat=unix(or dos) :wq 2.使用 dos2unix 这个只能把DOS转换成UNIX文件 . sudo apt-get in ...
- jenkins部署Vue项目 & 远程到远程服务
只是记录下自己是怎么配置的,方便自己以后要用的时候查阅 如果使用nodejs打包则需要上图中的脚本,nodejs只是把JavaScript代码去掉空格个换行变成不易于人阅读的方式 (为了方便复制而已, ...
- get_object_var 返回一个数组
语法:get_object_var($object),返回一个数组.获取$object对象中的属性,组成一个数组 实例: <?php class person{ public $name=&qu ...
- Redis 根据Key模糊批量查询数据
前言 经常会有这样一种业务逻辑,就是需要根据Redis中Key的规则,模糊查询对应的数据,当数据量少时,利用常规的命令也能满足需求,但是数据量大时,就会导致堵塞,就算是采用不堵塞的函数,如果数据需要显 ...
- js中的三目运算符详解
判断 javascript中的三目运算符用作判断时,基本语法为: expression ? sentence1 : sentence2 当expression的值为真时执行sentence1,否则执行 ...
- lua 元表Metatable (六)
元表理解起来比较抽象,但这是lua设置的一种数据结构而已, 假设有table_A.table_B 这2个table,如果table_A要操作table_B,显然是不可能的 因为者都之间是没有关系的,如 ...
- 宝塔面板liunx开启ssl域名后无法访问解决方法
不打开宝塔面板的ssl会不安全,打开了就会提示ssl证书不能使用的错误 如下所示: 您的连接不是私密连接 攻击者可能会试图从 你的ip 窃取您的信息(例如:密码.通讯内容或信用卡信息).了解详情 NE ...