《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 安装并启动 ...
随机推荐
- 用Excel如何将文本转换为数字的七种方法
用Excel如何将文本转换为数字的七种方法 当下,很多工作都会用到Excel,下面本文分步介绍了如何将包含文本的Excel单元格转换为包含数字的单元格. 概述: 当导入在另一程序(如 dBASE 或 ...
- k8s学习之资料参考网址(持续更新)
此文章持续更新关于学习k8s生态的参考网址: 二进制方式搭建 (此部署方式是一步一步的部署,过程清晰) https://github.com/opsnull/follow-me ...
- .Netcore 2.0 Ocelot Api网关教程(9)- QoS
本文介绍Ocelot中的QoS(Quality of Service),其使用了Polly对超时等请求下游失败等情况进行熔断. 1.添加Nuget包 添加 Ocelot.Provider.Polly ...
- DOS & UNIX文件格式转换
1.使用vi编辑器 vi xxxx :set fileformat=unix(or dos) :wq 2.使用 dos2unix 这个只能把DOS转换成UNIX文件 . sudo apt-get in ...
- Java基础——接口和抽象类
接口(interface) 什么是接口? 接口时抽象方法的合集.接口不可以被直接被实例化. 为什么要使用接口? 为了扩展.Java不支持多继承,但是通过接口就可以实现“多继承” 制定规则.接口就是规则 ...
- 2019-10-20 李宗盛 linux
Linux Linux简介(了解) Linux介绍:Linux是类UNIX计算机的统称 Linux操作系统的内核也是Linux Linux是由芬兰大学生Linux Torvalds于1991年编写 L ...
- 我的vim开发环境搭建:C/C++/Go,持续更新中
懒得在github博客上折腾评论功能,先借用博客园推广下,虽然好像也没什么用. 我的vim开发环境搭建(1): 准备工作 我的vim开发环境搭建(2): 常用的vim插件 我的vim开发环境搭建(3) ...
- css消除已有的背景颜色
比如我们在第三方库的时候,样式会有你不喜欢的,就比如背景颜色.那么就要去除已有的背景颜色 background-color:transparent;
- 记:linux服务器启动重启WEB项目启动成功,长时间卡住未响应
问题 云服务器部署web项目,每次正常启动项目后访问页面很久才能有响应,一直卡在INFO: Deploying web application directory ......长达几分钟以上,极度影响 ...
- Hadoop 单节点(或集群)基本配置信息
1. 默认配置文件: 存放于Hadoop对应的jar包中 core-default.xml hdfs-default.xml yarn-default.xml mapred-default.xml 2 ...