网上虽然有很多Python学习的教程,但是大多是围绕Python网页开发等展开。数据分析所需要的Python技能和网页开发等差别非常大,本人就是浪费了很多时间来看这些博客、书籍。所以就有了本文,希望能帮大家少走一点弯路。

-----------------我是分割线--------------

本文章主要从数据分析、机器学习(深度学习)的目的出发, 讲讲如何零基础学习Python语法、数据分析模块(Numpy、Scipy、Scikit和Pandas等)以及使用python进行机器学习(SFrame,tensorflow)。

(今天就写个小框架吧^_^)

去年开始接触Python数据分析的学习,全是自学,所以对于广大网友来说应该有较大的借鉴意义。熟练掌握任何一门语言,几乎都需要经过以下过程:

  1. 良师--学习Python课程+入门书籍+浏览技术博客
  2. 社区帮助--善于使用搜索引擎、Mail List
  3. 益友 -- 寻找学习伙伴
  4. Learn by Code --项目实践

一、Python学习课程推荐

这两个学习课程从最基础的Python语法开始,介绍了Python数据分析、统计模型以及机器学习的各个方面,内容十分充足。之所以建议使用老外的课程是因为,老外上课假定你什么都不会,讲解深入浅出,尤其是对于华盛顿大学的机器学习课程,把复杂的概念讲解得十分简单。

1. 密歇根大学的《学习使用Python编程并分析数据》主要包括以下课程(讲解十分详细,深入浅出,非常适合入门学习,视频都是有字幕的):

2. 华盛顿大学的《机器学习》专项课程

在专项课程页面无法选择旁听,必须点击进入单独课程页面才可,这个课程专题旁听是有限制的,无法提交作业;如有需求,可以申请奖学金,回答三个问题即可,系统自动通过申请。

  • 《机器学习基础:案例研究》:你是否好奇数据可以告诉你什么?你是否想在关于机器学习促进商业的核心方式上有深层次的理解?你是否想能同专家们讨论关于回归,分类,深度学习以及推荐系统的一切?在这门课上,你将会通过一系列实际案例学习来获取实践经历。
  • 《机器学习:回归》
  • 《机器学习:分类》
  • 《机器学习:聚类和检索》
  • 《机器学习:推荐系统和降维》
  • 《机器学习:应用深度学习创建智能运用》

二、网上打码教程

Learn by doing!!! 学习编程最有效的方式就是敲代码!

  1. Codecademy 围绕Python 的基础语法,内容非常丰富。
  2. Datacamp Python基本语法(他家的R语言课程十分不错!)

三、Python技术博客

简单介绍一些非常棒的Python技术学习的博客

1. 廖雪峰Python教程 简单易上手的Python基础语法教程,非常值得学习

2. 非常棒的pandas练习Github Repo

3. 很详细的Python 爬虫教程

4. 国外Data Science博客大全

四、Python入门书籍推荐

常用书籍下载网址,几乎囊括了网上能找得到的所有Python相关的书籍(PDF、Epub和mo bi格式),且提供云盘下载链接。你值得拥有!

http://www.salttiger.com/?s=python

1. 掌握Python语法的基础上学习《Python for data analysis》是比较不错的选择,涵盖了ipython notebook、Numpy、Scipy和Pandas包的使用。

2.《Python数据分析与挖掘实战》介绍了使用Python进行数据挖掘的详细案例,数据和代码都可以下载,作为机器学习的进阶学习是不错的选择(这本书也用对应的R语言和Matlab 版本)。

3. 《Python Cookbook》很厚的一本书,可以作为Python语法查询手册。

再添加几个外文书籍下载网址:

1. http://gen.lib.rus.ec 全,可能需要使用翻*墙下载,翻*墙方法见文末

2. http://www.foxebook.net

3. http://avxhome.in/ebooks/programming_development

五、推荐订阅博客(更细频率较高)

iPhone上可以使用Reeder阅读器,Instapaper用来保存后稍后阅读,因为信息量比较大。

  1. No free HunchKaggle竞赛平台的官方博客,包括一些优秀的代码解读以及高分选手的采访,十分有用的经验(来自不同背景,不同年龄层次,不同职业的选手)
  2. Flowing Data 十分有用的数据分析的案例
  3. Python日报 内容十分精彩的集锦(中文)

六、FAQ (待续)

  1. Python 2.x还是Python 3.x?
  2. 如何安装Python包? 强烈推荐Anaconda包,你值得拥有!尤其是Windows系统。
  3. 网络速度慢,请翻*墙,安利一款免费好用Google开发的防屏蔽的梯子Lantern, (无法下载更新可以私信我),速度不错。
  4. 是否需要很强的统计和数学背景? 有良好的数学和统计背景固然很好,但是现在很多岗位对数学和统计背景要求并不很多,都是简单的算法,Python编程已经能够很方便地实现,更多的是对业务的深入理解。如有需要建议,边学习Python边学习数学统计。

七、实践项目

  1. Kaggle竞赛项目,里面不仅仅有很多竞赛项目,而且有很多可供学习的代码博客以及论坛,都是实战项目,有很强的实践价值。

零基础学习Python数据分析的更多相关文章

  1. 零基础学习 Python 之前期准备

    写在之前 从今天开始,我将开始新的篇章 -- 零基础学习 Python,在这里我将从最基本的 Python 写起,然后再慢慢涉及到高阶以及具体应用方面.我是完全自学的 Python,所以很是明白自学对 ...

  2. 《零基础学习Python制作ArcGIS自定义工具》课程简介

    Python for ArcGIS Python for ArcGIS是借助Python语言实现ArcGIS自动化行为的综合,它不止是如课程标题所述的“制作ArcGIS自定义工具”,还包括使用Pyth ...

  3. 零基础学习 Python 之字符串

    初识字符串 维基百科对于字符串的定义式:字符串是由零个或者多个字符组成的有限串行.你之前学会敲的第一行 print 代码里的 "Hello World",就是一个字符串.字符串的本 ...

  4. 零基础学习 Python 之数字与运算

    写在之前 大家好,这里是零基础学习 Python 系列,在这里我将从最基本的 Python 写起,然后再慢慢涉及到高阶以及具体应用方面.我是完全自学的 Python,所以很是明白自学对于一个人的考验, ...

  5. 2017寒假零基础学习Python系列之 印子

    今日为2017年2月6日,据在慕课网上学习廖雪峰Python教程也快一周左右了,完全是零基础入门Python,大一上学期粗浅的接触学习了C语言,早就听说过Python语言的大名,又想把Python的爬 ...

  6. 零基础学习Python web开发、Python爬虫、Python数据分析,从基础到项目实战!

    随着大数据和人工智能的发展,目前Python语言的上升趋势比较明显,而且由于Python语言简单易学,所以不少初学者往往也会选择Python作为入门语言. Python语言目前是IT行业内应用最为广泛 ...

  7. 3个月零基础入门Python+数据分析,详细时间表+计划表分享

    ​大家好,我是白云. 今天想给大家分享的是三个月零基础入门数据分析学习计划.有小伙伴可能会说,英语好像有点不太好,要怎么办?所以今天我给大家分享的资源呢就是对国内的小伙伴很友好,还附赠大家一份三个月学 ...

  8. 零基础学习Python培训,应该选择哪个培训班?

    近几年中,Python一直是市场上最受欢迎的编程语言之一.它语法自然,入门简单,同时应用范围又极广,无论是大火的人工智能.大数据还是传统的web开发.自动化运维,Python都能够大展拳脚.根据职友集 ...

  9. 零基础学习python 你该怎么做

    本人文科生,回顾自己近 2 年的Python 自学经历,有一些学习心得和避坑经验分享给大家,让大家在学习 Python 的过程中少走一些弯路!减少遇到不必要的学习困难! 首先,最开始最大的困难应该就是 ...

随机推荐

  1. centos7 搭建svn服务

    linux(centos)下SVN服务器如何搭建?说到SVN服务器,想必大家都知道,可以是在LINUX下如何搭建SVN服务器呢?那么今天给大家分享一下linux(centos)搭建SVN服务器的思路! ...

  2. 【新手指南】App原型设计:如何快速实现这6种交互效果?

    做App原型设计,那么页面切换.进度条.页面滚动.图片轮播,下拉菜单,搜索框这些交互效果必不可少.如何简单快速地实现这些效果呢?以下小编根据经验为大家提供了一些简单的设计方法,以供参考. 1.页面跳转 ...

  3. Java并发艺术-CAS

    前言 CAS(Compare and Swap),即比较并替换,实现并发算法时常用到的一种技术,Doug lea大神在java同步器中大量使用了CAS技术,鬼斧神工的实现了多线程执行的安全性. CAS ...

  4. .net 分布式架构之分布式锁实现(转)

    分布式锁是控制分布式系统之间同步访问共享资源的一种方式.在分布式系统中,常常需要协调他们的动作.如果不同的系统或是同一个系统的不同主机之间共享了一个或一组资源,那么访问这些资源的时候,往往需要互斥来防 ...

  5. eclipse的thrift插件

    插件网址为:http://thrift4eclipse.sourceforge.net/en/install.html,经测试对Eclipse 4.4.2也有效: Eclipse 4.4.2上的安装步 ...

  6. linux每天一小步---ls命令详解

    1 命令功能: 列出当前目录下或者指定目录下的所有文件和目录,ls是list的缩写. 2 命令语法: ls [选项] [目录名]     #注:[]中的内容为非必选项 3 命令选项: -a 列出目录下 ...

  7. ios9出现的问题

    升级后需要注意两个地方  1 在build Settings 搜索bitcode 设置成no 2 在info.plist里添加以下属性  程序中报错:  App Transport Security ...

  8. JavaScript中的垃圾回收和内存泄漏

    摘要: JS内存管理. 作者:浪里行舟 Fundebug经授权转载,版权归原作者所有. 前言 程序的运行需要内存.只要程序提出要求,操作系统或者运行时就必须供给内存.所谓的内存泄漏简单来说是不再用到的 ...

  9. mysql快速插入大数据

    说的是插入数据,这个倒像是载入数据. 上一篇,是按照插入数据来写的,就是insert into,当时插入一万条实在是太慢了,大概是286734毫秒. insert into table values, ...

  10. BFC开启条件

    当元素CSS属性设置了下列之一时,即可创建一个BFC: float:left|right position:absolute|fixed display: table-cell|table-capti ...