Python数据分析从入门到精通
上QQ阅读APP看书,第一时间看更新

2.7 开发工具比较与代码共用

2.7.1 开发工具比较

前面章节分别介绍了PyCharm、Jupyter Notebook和Spyder这3种开发工具,它们各有特点。

 数据分析,建议使用Spyder和Jupyter Notebook。

 复杂、大型项目,建议使用PyCharm。

 数据分析、复杂和大型项目,建议三者可以结合使用。

1.PyCharm

Pycharm是很强大的Python IDE,容易上手,所有的变量都能够显示,方便程序调试。缺点是查看数据不方便、不美观,会出现列不对齐,或者多行多列显示不全的问题。

2.Jupyter Notebook

Jupyter Notebook将代码、说明文本、数学方程式、数据可视化图表等内容全部组合到一起显示在一个共享的文档中,可以实现一边写代码一边记录,而这些功能是Python自带的IDLE和集成开发环境PyCharm无法比拟的。

3.Spyder

Spyder特色是变量可以直观地以表格方式显示,随时随地查看变量和值,不容易出错。还可以用颜色区分数据,并对数据进行排序。

缺点是创建工程只支持在Spyder环境中创建,自己在本地创建的文件夹导入Spyder中则不支持,这一点逊色于PyCharm,PyCharm比较灵活,无论是在环境中创建还是自己在本地创建均支持。另外,Spyder调试程序没有PyCharm方便。

2.7.2 代码共用

由于Spyder以表格显示数据,查看变量更方便,并且看上去更加整齐美观,本书采用了Spyder,其生成的.py文件,在Pycharm和Jupyter Notebook中都可以运行。下面分别进行介绍。

1.在PyCharm中运行.py文件

在PyCharm中运行.py文件,如果只运行某一个文件,右击该文件,在弹出的快捷菜单中选择Edit with PyCharm Community Edition命令直接运行即可;如果运行项目文件夹,则需要运行Pycharm,选择File→Open命令,在Open File or Project窗口中选择项目文件夹即可。

接下来运行代码,需要注意以下3点。

(1)在PyCharm中查看运行结果需要使用print()方法在控制台输出。

(2)需要解决列不对齐,或者多行多列显示不全的问题。

当在控制台输出数据时,会出现列不对齐,或者多行多列显示不全的问题。此时需要使用Pandas模块的set_option()函数来解决这两个问题。

 解决列不对齐

通过将display.unicode.east_asian_width设置为True,使列对齐。例如:

pd.set_option('display.unicode.east_asian_width', True)

 行列显示不全

通过display.max_rows和display.max_columns修改输出数据的最大行数和列数。例如:

pd.set_option('display.max_rows',1000)
pd.set_option('display.max_columns',1000)

其中pd为Pandas模块。

(3)显示图表需要使用show()方法。

在使用Matplotlib和Seaborn绘制图表时,显示图表需要使用show()方法。代码如下:

plt.show()

其中plt为Matplotlib模块的pyplot子模块。

说明

相关内容介绍可参见第5章。

下面将介绍如何在PyCharm下运行.py文件,以及修改相关代码以匹配PyCharm开发环境。具体步骤如下所示。

(1)运行PyCharm,选择File→Open命令,在Open File or Project窗口中选择Code文件夹,如图2.73所示。单击OK按钮,在弹出的对话框中单击New Windows按钮,在新窗口中导入本书源码,展开Code\03\01,双击demo.py文件,如图2.74所示。

图2.73 选择Code文件夹

图2.74 查看demo.py文件的代码

(2)由于在Spyder中不需要使用print()方法就可以查看变量,因此上述代码直接在PyCharm中运行将不会显示运行结果,需要使用print()方法输出,修改后的代码如下:

01 import pandas as pd               #导入pandas 模块
02 df=pd.read_excel('data.xlsx')      #读取Excel 文件
03 print(df.head())

(3)运行程序,输出结果如图2.75所示。

图2.75 输出结果1

正如前文所述,出现了列不对齐的现象,增加一行代码来解决这一问题,代码如下:

pd.set_option('display.unicode.east_asian_width', True)

再次运行程序,输出结果如图2.76所示。可以看到,列不对齐现象已解决。

图2.76 输出结果2

接下来,我们还将介绍如何在Jupyter Notebook中运行.py文件。

2.在Jupyter Notebook中运行.py文件

在Jupyter Notebook开发工具中运行.py文件有以下两种方法。

方法1:利用%run xx.py直接运行得出结果。

方法2:利用%load xx.py导入代码再选择Run命令运行。为了方便修改代码,推荐使用这种方法。

知识胶囊

Jupyter Notebook中以%开头的代码为魔法函数,具体说明如下。

 %run:用于调用外部的Python脚本文件。

 %load:用于加载本地文件。

在Jupyter Notebook开发工具中运行.py文件,具体步骤如下所示。

(1)运行Jupyter Notebook,首先创建一个项目文件夹,单击右上角的New按钮,在弹出的菜单中选择Folder选项,如图2.77所示。

图2.77 创建项目文件夹

(2)创建完成后,列表中会出现一个默认名为Untitled Folder的文件夹,双击进入该文件夹,单击上方的Upload按钮上传文件,在“打开”对话框中选择项目文件夹中的文件,单击“打开”按钮,如图2.78所示。

(3)导入项目文件,单击“上传”按钮,将项目文件上传到文件夹中。

(4)上传完成后,单击右上角的New按钮,新建一个Python 3文件,如图2.79所示。

(5)加载本地.py文件,代码如下:

%load demo.py

(6)运行程序,代码将被导入Jupyter Notebook中,如图2.80所示。

(7)图2.80中并没有输出结果是因为没有指定变量,下面对代码稍作修改,如图2.81所示。

图2.78 导入项目文件的过程

图2.79 新建一个Python 3文件

图2.80 导入.py文件

图2.81 修改后的代码

(8)再次运行程序,结果如图2.82所示。

图2.82 输出结果

注意

如果不显示运行结果,单击“中断服务”后再次运行即可。

上述文件是符合Jupyter Notebook的文件格式,即Untitled.ipynb。

以上对比了不同的开发工具,无论使用哪一种开发工具,其代码都有一定的通用性,只是在输出结果上略有不同,如果掌握了一定的Python技能,就可以安装多种开发工具,并根据需求进行切换。