以下操作均在 Windows 环境下进行操作,先说明一下哈
一、安装 Python1、官网下载 Python
进入官网(https://www.python.org),点击 Downloads,选择要下载的版本:
2、安装 Python
安装时注意下图勾选部分一定要勾选:
二、安装代码编辑器 PyCharm1、官网下载 PyCharm
进入官网(https://www.jetbrains.com/pycharm),点击 Downloads,选择要下载的版本:
2、安装 PyCharm
设置安装路径之后,一直点 next 即可。
3、优化 PyCharm 使用
三、HelloWorld创建第一个项目 HelloWorld –> 创建文件 app.py –> 写入代码:
1print("HelloWorld")
效果图:
四、Python 语法看语法部分之前,推荐直接看下面入门练习题,潜移默化中对 Python 基本语法会有一定了解之后,再回来看这一部分,会更加熟悉 Python 的使用!
五、入门练习题1.打印 10 个 *
使用到表达 ...
一、下载安装 Anaconda1、下载地址:Anaconda
推荐下载 python3 版本, 毕竟未来 python2 是要停止维护的。
2、安装 Anaconda
按照安装程序提示一步步安装就好了, 安装完成之后会多几个应用:
Anaconda Navigtor :用于管理工具包和环境的图形用户界面,后续涉及的众多管理命令也可以在 Navigator 中手工实现。
Jupyter notebook :基于 web 的交互式计算环境,可以编辑易于人们阅读的文档,用于展示数据分析的过程。
qtconsole :一个可执行 IPython 的仿终端图形界面程序,相比 Python Shell 界面,qtconsole 可以直接显示代码生成的图形,实现多行代码输入执行,以及内置许多有用的功能和函数。
spyder :一个使用 Python 语言、跨平台的、科学运算集成开发环境。
二、配置环境变量如果是 windows 的话需要去 控制面板\系统和安全\系统\高级系统设置\环境变量\用户变量\PATH 中添加 anaconda 的安装目录的 Scripts 文件夹,比如我的路径是D: ...
最近在使用Jupyter notebook的时候感觉到,没有个目录真心难受,当想查找需要的函数的时候,不能很快速的找到,这个时候,要是有个目录就好很多了,很不幸的是,默认Jupyter notebook事没有生成目录这个功能的,但很巧的是,有人已经开发了Jupyter插件,里面包含toc目录功能,开森 🦞
效果图如下:
同时toc目录的大小和位置可以随意改变,也支持对每个标题自动编号,默认的就挺好哈哈哈。
如何安装呢?
第一步:安装Jupyter notebook
这个不用说应该都安装了吧,数据分析特别好用的工具,没有之一。
第二步:安装Jupyter notebook extensions
1conda install -c conda-forge jupyter_contrib_nbextensions
第三步:开启toc插件
重新运行Jupyter notebook,会发现,多了Nbextensions按钮,点击这个tab,按照下图操作:
注意:旧版本可能不支持,试试把disable configuration那行前面的✅取消掉再试试,我就是遇到这个问题。
第四步:生 ...
1.1 本书的内容Python 数据分析这本书讲的是利用 Python 进行数据控制、处理、整理、分析等方面的具体细节和基本要点。作者介绍 Python 编程和用于数据处理的库和工具环境,掌握这些,可以让你成为一个数据分析专家。虽然本书的标题是“数据分析”,重点却是 Python 编程、库,以及用于数据分析的工具。这就是数据分析要用到的 Python 编程。
1.1.1 什么样的数据?
🔰 当书中出现“数据”时,究竟指的是什么呢?
主要指的是结构化数据(structured data),这个故意含糊其辞的术语代指了所有通用格式的数据,例如:
表格型数据,其中各列可能是不同的类型(字符串、数值、日期等)。比如保存在关系型数据库中或以制表符/逗号为分隔符的文本文件中的那些数据。
多维数组(矩阵)。
通过关键列(对于 SQL 用户而言,就是主键和外键)相互联系的多个表。
间隔平均或不平均的时间序列。
这绝不是一个完整的列表。大部分数据集都能被转化为更加适合分析和建模的结构化形式,虽然有时这并不是很明显。如果不行的话,也可以将数据集的特征提取为某种结构化形式。例如,一组新闻文 ...
我们现在使用的库,有 pandas、scikit-learn 和 statsmodels,2017年,数据科学、数据分析和机器学习的资源已经很多,原来通用的科学计算拓展到了计算机科学家、物理学家和其它研究领域的工作人员。学习 Python 和成为软件工程师的优秀书籍也有了。
因为这本书是专注于 Python 数据处理的,对于一些 Python 的数据结构和库的特性难免不足。因此,本章和第 3 章的内容只够你能学习本书后面的内容。
在我来看,没有必要为了数据分析而去精通 Python。我鼓励你使用IPython shell和Jupyter试验示例代码,并学习不同类型、函数和方法的文档。虽然我已尽力让本书内容循序渐进,但读者偶尔仍会碰到没有之前介绍过的内容。
本书大部分内容关注的是基于表格的分析和处理大规模数据集的数据准备工具。为了使用这些工具,必须首先将混乱的数据规整为整洁的表格(或结构化)形式。幸好,Python 是一个理想的语言,可以快速整理数据。Python 使用得越熟练,越容易准备新数据集以进行分析。
最好在 IPython 和 Jupyter 中亲自尝试本书中使用的工具。当 ...
🐹 本章讨论Python的内置功能,这些功能本书会用到很多。虽然扩展库,比如pandas和Numpy,使处理大数据集很方便,但它们是和Python的内置数据处理工具一同使用的。
我们会从Python最基础的数据结构开始:元组、列表、字典和集合。然后会讨论创建你自己的、可重复使用的Python函数。最后,会学习Python的文件对象,以及如何与本地硬盘交互。
3.1 数据结构和序列Python的数据结构简单而强大。通晓它们才能成为熟练的Python程序员。
3.1.1 元组元组是一个固定长度,不可改变的Python序列对象。创建元组的最简单方式,是用逗号分隔一列值:
1234In [1]: tup = 4, 5, 6In [2]: tupOut[2]: (4, 5, 6)
当用复杂的表达式定义元组,最好将值放到圆括号内,如下所示:
1234In [3]: nested_tup = (4, 5, 6), (7, 8)In [4]: nested_tupOut[4]: ((4, 5, 6), (7, 8))
用tuple可以将任意序列或迭代器转换成元组:
1234567In [5] ...
NumPy(Numerical Python的简称)是Python数值计算最重要的基础包。大多数提供科学计算的包都是用NumPy的数组作为构建基础。
NumPy的部分功能如下:
ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组。
用于对整组数据进行快速运算的标准数学函数(无需编写循环)。
用于读写磁盘数据的工具以及用于操作内存映射文件的工具。
线性代数、随机数生成以及傅里叶变换功能。
用于集成由C、C++、Fortran等语言编写的代码的A C API。
由于NumPy提供了一个简单易用的C API,因此很容易将数据传递给由低级语言编写的外部库,外部库也能以NumPy数组的形式将数据返回给Python。这个功能使Python成为一种包装C/C++/Fortran历史代码库的选择,并使被包装库拥有一个动态的、易用的接口。
NumPy本身并没有提供多么高级的数据分析功能,理解NumPy数组以及面向数组的计算将有助于你更加高效地使用诸如pandas之类的工具。因为NumPy是一个很大的题目,我会在附录A中介绍更多NumPy高级功能,比如广播 ...
pandas是本书后续内容的首选库。它含有使数据清洗和分析工作变得更快更简单的数据结构和操作工具。pandas经常和其它工具一同使用,如数值计算工具NumPy和SciPy,分析库statsmodels和scikit-learn,和数据可视化库matplotlib。pandas是基于NumPy数组构建的,特别是基于数组的函数和不使用for循环的数据处理。
虽然pandas采用了大量的NumPy编码风格,但二者最大的不同是pandas是专门为处理表格和混杂数据设计的。而NumPy更适合处理统一的数值数组数据。
自从2010年pandas开源以来,pandas逐渐成长为一个非常大的库,应用于许多真实案例。开发者社区已经有了800个独立的贡献者,他们在解决日常数据问题的同时为这个项目提供贡献。
在本书后续部分中,我将使用下面这样的pandas引入约定:
1In [1]: import pandas as pd
因此,只要你在代码中看到pd.,就得想到这是pandas。因为Series和DataFrame用的次数非常多,所以将其引入本地命名空间中会更方便:
1In [2]: from pand ...
访问数据是使用本书所介绍的这些工具的第一步。我会着重介绍pandas的数据输入与输出,虽然别的库中也有不少以此为目的的工具。
输入输出通常可以划分为几个大类:读取文本文件和其他更高效的磁盘存储格式,加载数据库中的数据,利用Web API操作网络资源。
6.1 读写文本格式的数据pandas提供了一些用于将表格型数据读取为DataFrame对象的函数。表6-1对它们进行了总结,其中read_csv和read_table可能会是你今后用得最多的。
我将大致介绍一下这些函数在将文本数据转换为DataFrame时所用到的一些技术。这些函数的选项可以划分为以下几个大类:
索引:将一个或多个列当做返回的DataFrame处理,以及是否从文件、用户获取列名。
类型推断和数据转换:包括用户定义值的转换、和自定义的缺失值标记列表等。
日期解析:包括组合功能,比如将分散在多个列中的日期时间信息组合成结果中的单个列。
迭代:支持对大文件进行逐块迭代。
不规整数据问题:跳过一些行、页脚、注释或其他一些不重要的东西(比如由成千上万个逗号隔开的数值数据)。
因为工作中实际碰到的数据可能十分混乱,一些数据加载 ...
