《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数据科学手册》的更多相关文章

  1. 简单物联网:外网访问内网路由器下树莓派Flask服务器

    最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...

  2. 利用ssh反向代理以及autossh实现从外网连接内网服务器

    前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...

  3. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  4. 外网访问内网SpringBoot

    外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...

  5. 外网访问内网Elasticsearch WEB

    外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...

  6. 怎样从外网访问内网Rails

    外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...

  7. 怎样从外网访问内网Memcached数据库

    外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...

  8. 怎样从外网访问内网CouchDB数据库

    外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...

  9. 怎样从外网访问内网DB2数据库

    外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...

  10. 怎样从外网访问内网OpenLDAP数据库

    外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...

随机推荐

  1. Goland 激活码

    实测有效,分享下 Goland

  2. 使用 bash 脚本把 GCE 的数据备份到 GCS

    目录 一.Google Cloud Storge 介绍 1.1.四种存储类别的比较 1.2.需求 1.3.给虚拟机添加授权认证 二.备份操作 2.1 创建存储分区 2.2 上传对象到存储分区 2.3 ...

  3. python如何发布自已pip项目

    python如何发布自已pip项目前言因为自已平时会把一个常用到逻辑写成一个工具python脚本,像关于时间字符串处理,像关于路径和文件夹遍历什么的工具.每一次新建一个项目的时候都要把这些工具程序复制 ...

  4. DOS & UNIX文件格式转换

    1.使用vi编辑器 vi xxxx :set fileformat=unix(or dos) :wq 2.使用 dos2unix 这个只能把DOS转换成UNIX文件 . sudo apt-get in ...

  5. jenkins部署Vue项目 & 远程到远程服务

    只是记录下自己是怎么配置的,方便自己以后要用的时候查阅 如果使用nodejs打包则需要上图中的脚本,nodejs只是把JavaScript代码去掉空格个换行变成不易于人阅读的方式 (为了方便复制而已, ...

  6. get_object_var 返回一个数组

    语法:get_object_var($object),返回一个数组.获取$object对象中的属性,组成一个数组 实例: <?php class person{ public $name=&qu ...

  7. Redis 根据Key模糊批量查询数据

    前言 经常会有这样一种业务逻辑,就是需要根据Redis中Key的规则,模糊查询对应的数据,当数据量少时,利用常规的命令也能满足需求,但是数据量大时,就会导致堵塞,就算是采用不堵塞的函数,如果数据需要显 ...

  8. js中的三目运算符详解

    判断 javascript中的三目运算符用作判断时,基本语法为: expression ? sentence1 : sentence2 当expression的值为真时执行sentence1,否则执行 ...

  9. lua 元表Metatable (六)

    元表理解起来比较抽象,但这是lua设置的一种数据结构而已, 假设有table_A.table_B 这2个table,如果table_A要操作table_B,显然是不可能的 因为者都之间是没有关系的,如 ...

  10. 宝塔面板liunx开启ssl域名后无法访问解决方法

    不打开宝塔面板的ssl会不安全,打开了就会提示ssl证书不能使用的错误 如下所示: 您的连接不是私密连接 攻击者可能会试图从 你的ip 窃取您的信息(例如:密码.通讯内容或信用卡信息).了解详情 NE ...