人工智能第三课:数据科学中的Python
我用了两天左右的时间完成了这一门课《Introduction to Python for Data Science》的学习,之前对Python有一些基础,所以在语言层面还是比较顺利的,这门课程的最大收获是让我看到了在数据科学中Python的真正威力(也理解了为什么Python这么流行),同时本次课程的交互式练习体验(Datacamp)非常棒。

这门课程主要包括了6个单元的内容,一开始介绍了Python的基本概念(常见数据类型和变量),从第二节开始讲解列表在Python中的使用,并且逐步演进,我们还学习了使用真正为Data Science准备的几个package的应用。

从数据科学的角度来看,Python可能真的是很适合的一个编程语言和环境。这不光是因为他本身的语法比较简单,而且目前已经有几个非常强大的包(Package)对其进行支持。

Python中的list用来表示一系列的数据,它非常灵活,甚至可以在一个列表中包含不同类型的数据,当然这样也就带来了一定的负面作用,例如性能。而numpy的array则是对list的一种改进,它进行规划化(一个array的轴上只支持同一种数据类型),并提供了更多的一些与数据科学的运算(函数)。

它自身的运算规则也跟列表有极大的区别,例如

numpy库内置支持很多科学运算的函数,不需要依赖其他库

数据科学不光是对数据的处理,而且还需要对数据进行展示。目前全世界最流行的用来做数据可视化的库是matplotlib。

下图是一个最简单的例子

请注意,图形的数据来源既可以是List,也可以是Array,当然还可以是下面的终极解决方案DataFrame,来自pandas这个库。
numpy和matplotlib,可以很好地处理数据科学的场景。但如果数据量真的很大,则可能需要用到pandas了。

pandas提供了一个全新的dataframe的对象,它是完全为科学运算和统计而设计的,而且它自带了可视化组件库,不需要额外依赖matplotlib。

从技术上说,DataFrame很像是一个Excel表格或者数据库,它具有行和列的概念,也有索引的技术。
DataFrame还支持从外部文件(例如csv)或者网络地址加载数据,这将使得它真正具有实用的价值。
最后,我之前提到过了,本次课程给我最惊喜的一个体验是交互式练习。这是一个第三方学习平台(DataCamp)提供的,非常酷。

最后,基于Jupyter构建的notebooks.azure.com ,让我们可以在线编辑python,并且运行,形成笔记——不需要azure订阅即可使用。如果你愿意,你还可以在本地安装Jupyter。
本地安装Jupyter,请参考 https://jupyter.org/install.html

请通过 https://aka.ms/learningAI 或者扫描下面的二维码关注本系列文章《人工智能学习笔记》



人工智能第三课:数据科学中的Python的更多相关文章
- 数据科学中的常见的6种概率分布(Python实现)
作者:Pier Paolo Ippolito@南安普敦大学 编译:机器学习算法与Python实战(微信公众号:tjxj666) 原文:https://towardsdatascience.com/pr ...
- 数据科学中需要知道的5个关于奇异值分解(SVD)的应用
介绍 "Another day has passed, and I still haven't used y = mx + b." 这听起来是不是很熟悉?我经常听到我大学的熟人抱怨 ...
- 3 个用于数据科学的顶级 Python 库
使用这些库把 Python 变成一个科学数据分析和建模工具. Python 的许多特性,比如开发效率.代码可读性.速度等使之成为了数据科学爱好者的首选编程语言.对于想要升级应用程序功能的数据科学家和机 ...
- 深入对比数据科学工具箱:Python和R之争
建议:如果只是处理(小)数据的,用R.结果更可靠,速度可以接受,上手方便,多有现成的命令.程序可以用.要自己搞个算法.处理大数据.计算量大的,用python.开发效率高,一切尽在掌握. 概述 在真实的 ...
- 数据科学中的R和Python: 30个免费数据资源网站
1 政府数据 Data.gov:这是美国政府收集的数据资源.声称有多达40万个数据集,包括了原始数据和地理空间格式数据.使用这些数据集需要注意的是:你要进行必要的清理工作,因为许多数据是字符型的或是有 ...
- 第三课 Dubbo设计中的设计模式
责任链模式 责任链模式在Dubbo中发挥的作用举足轻重,就像是Dubbo框架的骨架.Dubbo的调用链组织是用责任链模式串连起来的. 责任链中的每个节点实现Filter接口,然后由ProtocolF ...
- ionic新手教程第三课-在项目中使用requirejs分离controller文件和server文件
继上篇教程中提到的,我们新建一个简单的tabs类型的Ionic项目. 依据文件夹文件我们知道,系统自己主动创建了一个controller文件和server文件,而且把全部的控制器和服务都写到这两个文件 ...
- python 在数据科学中的应用之matplotlib
1.matplotlib模块生成直线图和散点图 >>>import matplotlib.pyplot as plt >>>year = [1950,1970,19 ...
- python中令人惊艳的小众数据科学库
Python是门很神奇的语言,历经时间和实践检验,受到开发者和数据科学家一致好评,目前已经是全世界发展最好的编程语言之一.简单易用,完整而庞大的第三方库生态圈,使得Python成为编程小白和高级工程师 ...
随机推荐
- Ubuntu 离线安装 docker
1.下载离线包,网址:https://download.docker.com/linux/ubuntu/dists/xenial/pool/stable/amd64/ 离线安装docker需要下载3个 ...
- Linux下使用openVPN连接到某个内网
推荐一个网站(比较全的介绍关于openvpn的客户端与服务端的配置) 点击我 此处我介绍我配置openvpn客户端连接的坑 我的机器为kali linux apt-get install openvp ...
- Spring Boot使用AOP实现REST接口简易灵活的安全认证
我们继续上一篇文章的分析,本文将通过AOP的方式实现一个相对更加简易灵活的API安全认证服务. 我们先看实现,然后介绍和分析AOP基本原理和常用术语. 一.Authorized实现 1.定义注解 pa ...
- kaldi 运行voxforge例子
---------------------------------------------------------------------------------------------------- ...
- Dubbo 源码分析 - 服务调用过程
注: 本系列文章已捐赠给 Dubbo 社区,你也可以在 Dubbo 官方文档中阅读本系列文章. 1. 简介 在前面的文章中,我们分析了 Dubbo SPI.服务导出与引入.以及集群容错方面的代码.经过 ...
- 使用Sybmol模块来构建神经网络
符号编程 在之前的文章,我们介绍了NDArray模块,它是MXNet中处理数据的核心模块,我们可以使用NDArray完成非常丰富的数学运算.实际上,我们完全可以使用NDArray来定义神经网络,这种方 ...
- Akka-Cluster(5)- load-balancing with backoff-supervised stateless computation - 无状态任务集群节点均衡分配
分布式程序运算是一种水平扩展(scale-out)运算模式,其核心思想是能够充分利用服务器集群中每个服务器节点的计算资源,包括:CPU.内存.硬盘.IO总线等.首先对计算任务进行分割,然后把细分的任务 ...
- YxCMS 1.4.7 最新版漏洞分析
i春秋作家:F0rmat 原文来自:YxCMS 1.4.7 最新版漏洞分析 0x01前言 很感谢关注我专辑的表哥,我会坚持写下去的,最近会慢一点,一月四篇是正常的. 在先知看到的,大部分都是后台漏洞, ...
- Android MediaPlayer SeekTo 在 8.0 版本上优化说明
android使用 mediaPlayer 播放video视频过程中, 当用户退出当前播放,再从后台恢复播放时,需要跳转到之前退出的时间点继续播放.使用的方法基本都是 SeekTo 之前的时间点,但是 ...
- MySQL InnoDB 逻辑存储结构
MySQL InnoDB 逻辑存储结构 从InnoDB存储引擎的逻辑结构看,所有数据都被逻辑地存放在一个空间内,称为表空间,而表空间由段(sengment).区(extent).页(page)组成.p ...