力压 R,Python 在数据科学领域风生水起

2018 年 9 月 9 日 CSDN

TIOBE 最新发布的 9 月编程语言排行榜中,Python 凭 4.67% 的增速以 0.26% 的优势力压 C++,逆袭成功进入 Top 3。

TIOBE 9 月编程语言 Top 5

而近一年势头不灭的 Python 在数据分析领域,是专家们的必备技能。随着 IT 行业的增长,对有经验的数据科学家的需求也水涨船高,而 Python 也一跃而成最受欢迎的语言。本文旨在介绍分析数据的基本知识,并利用 Python 创建一些漂亮的数据可视化。


概要


  • 为什么要学数据科学中的 Python?

  • Python 简介

  • 为数据科学中的 Python 安装 Jupyter

  • Python 的基本知识

  • 用于数据科学的 Python 库

  • Demo:实际应用


数据科学领域,非 Python 语言莫属?


Python 是最适合数据科学家的语言,这一点毫无争议。下面几点可以帮你理解为什么从事数据科学的人选择了 Python:

  • Python 是一门免费,灵活且强大的开源语言。

  • Python 能减少一半的开发时间,同时提供简洁易读的语法。

  • 使用 Python 可以进行数据操作、数据分析和可视化。

  • Python 提供功能强大的库,用于机器学习应用和其他科学计算。

你知道最大的好处是什么吗?数据科学家是目前收入最高的职位之一,根据 Indeed.com 的数据,平均年薪为 $130,621

Python 由 Guido Van Rossum 于 1989 年创建。它是个解释语言,拥有动态语义。它在所有的平台上可以免费使用。Python 是:

  1. 面向对象

  2. 高级语言

  3. 容易学

  4. 面向过程


为数据科学中的 Python 安装 Jupyter


我们先来在自己的系统上安装 Jupyter。请按照以下步骤进行:

  • 第 1 步:访问 https://jupyter.org/

  • 第 2 步:点击“Try in your browser”或“Install the Notebook”

我建议你使用 Anaconda 发行版(https://www.anaconda.com/download/)安装 Python 和 Jupyter。装好Jupyter 之后,可以在命令行中输入“Jupyter Notebook”即可在默认浏览器中打开。现在我们在 Jupyter 上写个最基本的程序。

name=input("Enter your Name:")
print("Hello", name)

要运行这段代码,可以按下“Shift+Enter”,即可查看输出。如下面的截图所示:


数据科学中的 Python 的基础


现在可以开始编程了。为了编程,你需要先了解以下的基础知识:

  • 变量:“变量”这个术语指内存中的一块保留的位置,用于保存值。在Python中,使用变量之前不需要定义变量,更不需要声明变量的类型。

  • 数据类型:Python 支持多种数据类型,这些数据类型定义了变量上可能的操作,以及它们的存储方式。数据类型包括数值、列表、字符串、元组、集合和字典。

  • 操作符:操作符可以操纵操作数中的值。Python 中的操作符包括数值操作符、列表操作符、字符串操作符、元组操作符、集合操作符和字典操作符。

  • 条件语句:条件语句可以根据某个条件执行一组语句。有三个条件语句:if、elif 和 else。

  • 循环:循环用来反复执行一小段代码。有三种循环,分别是while、for和嵌套循环。

  • 函数:函数用来将代码分隔成有意义的功能块,以便更好地组织代码,让代码更易读,重用代码,还能节省时间。

关于 Python的更多信息和实际的实现,可以参考这篇文章:Python 入门(https://www.edureka.co/blog/python-tutorial/)。


数据科学中的 Python 库


这是 Python 在数据科学中发挥力量的部分。Python 拥有大量用于科学计算、分析、可视化等的库。一些库如下:

  • Numpy - NumPy 是 Python 在数据科学方面的核心库,它的名字的意思是“数值计算用的Python”。它可以用于科学计算,包含了强大的 n 维数组对象,并提供了许多工具与 C、C++ 等语言集成。它还可以用作多维容器,用来存储任意数据,从而进行各种 NumPy 操作和特殊功能。

  • Matplotlib - Matplotlib 是个强大的可视化 Python 库。它可以用于Python 脚本、shell、Web 应用服务器上,还可以用于其他 GUI 工具中。可以用它绘制各种图表,也可以把多种图表画在一起。

  • Scikit-learn - Scikit-learn 是最引人注目的库之一,通过它可以用 Python 实现机器学习。这个免费的库包含了用于数据分析和数据挖掘的简单有效的工具。用它可以实现各种算法,如逻辑回归。

  • Seaborn - Seaborn 是个统计绘图的 Python 库。在数据科学中使用 Python 时,可以使用 matplotlib(用于二维可视化)和 Seaborn,后者有漂亮的样式和高级接口可以用于绘制统计图表。

  • Pandas - Pandas 是数据科学中的重要的 Python 库。它用来操作数据和分析数据。它很适合不同类型的数据,如表格、有序时间序列、无序时间序列、矩阵等。这里有个视频(https://youtu.be/B42n3Pc-N2A)演示了如何在处理数据之前使用 Pandas 进行数据分析。


Demo:实际应用


问题描述:给定一组数据集,该数据集是由多种数据组成的综合统计数据,如监狱设施的分布和情况、监狱的拥挤程度、监狱中的犯人类型,等等。请在这个数据集上做描述性的统计,并从数据中找出有用的信息。下面是几个任务:

  1. 数据加载:使用 Pandas 加载数据集“prisoners.csv”并显示数据集中的前五行和最后五行。然后用 Pandas 的 describe 方法找出列数。

  2. 数据操作:创建一个新的列 - “total benefitted”,它是所有模式下的受益的犯人总数。

  3. 数据可视化:创建条形图,用每个州的名字作为X轴,受益犯人的总数作为条的高度。

加载数据使用以下代码:

import pandas as pd
import matplotlib.pyplot as plot
%matplotlib inline
file_name = "prisoners.csv"
prisoners = pd.read_csv(file_name)
prisoners

然后用 Pandas 的 describe 方法,只需输入以下语句:

prisoners.describe()

然后进行数据操作:

prisoners["total_benefited"]=prisoners.sum(axis=1)
prisoners.head()

最后,用 Python 做一些数据可视化。代码如下:

import numpy as np
xlabels = prisoners['STATE/UT'].values
plot.figure(figsize=(203))
plot.xticks(np.arange(xlabels.shape[0]), xlabels, rotation = 'vertical', fontsize = 18)
plot.xticks
plot.bar(np.arange(prisoners.values.shape[0]),prisoners['total_benefited'],align = 'edge')

原文:https://dzone.com/articles/learn-python-for-data-science-using-python-librari

作者:Aayushi Johari

译者:弯月,责编:屠敏


登录查看更多
0

相关内容

数据科学(英語:data science)是一门利用数据学习知识的学科,其目标是通过从数据中提取出有价值的部分来生产数据产品。 它结合了诸多领域中的理论和技术,包括应用数学、统计、模式识别、机器学习、数据可视化、数据仓库以及高性能计算。 数据科学通过运用各种相关的数据来帮助非专业人士理解问题。
【2020新书】实战R语言4,323页pdf
专知会员服务
100+阅读 · 2020年7月1日
【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
266+阅读 · 2020年6月10日
【实用书】Python技术手册,第三版767页pdf
专知会员服务
234+阅读 · 2020年5月21日
Python导论,476页pdf,现代Python计算
专知会员服务
260+阅读 · 2020年5月17日
算法与数据结构Python,369页pdf
专知会员服务
162+阅读 · 2020年3月4日
【2020新书】数据科学:十大Python项目,247页pdf
专知会员服务
213+阅读 · 2020年2月21日
Python用法速查网站
Python程序员
17+阅读 · 2018年12月16日
数据科学、机器学习IDE概览
论智
9+阅读 · 2018年11月12日
实战 | 用Python做图像处理(三)
七月在线实验室
15+阅读 · 2018年5月29日
最全数据科学学习资源:Python、线性代数、机器学习...
人工智能头条
12+阅读 · 2018年5月14日
Python 杠上 Java、C/C++,赢面有几成?
CSDN
6+阅读 · 2018年4月12日
Python为啥这么牛?
Python程序员
3+阅读 · 2018年3月30日
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
十分钟读懂python的“数据库”语言
Python技术博文
3+阅读 · 2017年11月9日
推荐|2017年最受数据科学欢迎的Top15个Python库!
全球人工智能
8+阅读 · 2017年10月28日
Arxiv
22+阅读 · 2019年11月24日
Arxiv
6+阅读 · 2018年11月1日
Arxiv
22+阅读 · 2018年8月30日
Angular-Based Word Meta-Embedding Learning
Arxiv
3+阅读 · 2018年8月13日
Arxiv
5+阅读 · 2018年1月30日
VIP会员
相关VIP内容
【2020新书】实战R语言4,323页pdf
专知会员服务
100+阅读 · 2020年7月1日
【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
266+阅读 · 2020年6月10日
【实用书】Python技术手册,第三版767页pdf
专知会员服务
234+阅读 · 2020年5月21日
Python导论,476页pdf,现代Python计算
专知会员服务
260+阅读 · 2020年5月17日
算法与数据结构Python,369页pdf
专知会员服务
162+阅读 · 2020年3月4日
【2020新书】数据科学:十大Python项目,247页pdf
专知会员服务
213+阅读 · 2020年2月21日
相关资讯
Python用法速查网站
Python程序员
17+阅读 · 2018年12月16日
数据科学、机器学习IDE概览
论智
9+阅读 · 2018年11月12日
实战 | 用Python做图像处理(三)
七月在线实验室
15+阅读 · 2018年5月29日
最全数据科学学习资源:Python、线性代数、机器学习...
人工智能头条
12+阅读 · 2018年5月14日
Python 杠上 Java、C/C++,赢面有几成?
CSDN
6+阅读 · 2018年4月12日
Python为啥这么牛?
Python程序员
3+阅读 · 2018年3月30日
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
十分钟读懂python的“数据库”语言
Python技术博文
3+阅读 · 2017年11月9日
推荐|2017年最受数据科学欢迎的Top15个Python库!
全球人工智能
8+阅读 · 2017年10月28日
Top
微信扫码咨询专知VIP会员