支招 | 使用 Visual Studio 和 python 设置自己的数据科学工作区

2019-08-27 15:54:03 浏览数 (1)

新手在刚刚开始数据科学的学习时会遇到很多问题,而往往最简单的问题也最容易犯错。其中,搭建一个好的工作空间将让你避免很多不必要的麻烦。关于这个问题,荷兰数据分析师 Christiaan Dollen 近日发表了一篇博文,在文中他分享了用 Visual Studio(VS)和 python 设置自己的数据科学工作区的经验,AI 开发者将全文编辑如下:

如果你刚开始从事数据科学领域,那么创建一个个人工作空间将帮助你保持项目的有序性。有很多不同的工具可以使用。在这篇文章中,我将向你展示如何使用一些业内最常用的工具在 MacOS 上建立自己的工作区。当然,Windows 平台的步骤和 MacOS 几乎相同。在学完之后,你将能够:

  • 用 Anaconda 搭建一个 python 环境
  • 创建一个 Visual Studio 代码工作区并运行 python 脚本
  • 安装软件包并管理不同的 Anaconda 环境

让我们开始吧!

使用 Anaconda 设置 python 环境


Anaconda 主要用于应用数据科学、机器学习、数据处理、分析等。它允许你管理你自己的环境和将在项目中使用的包。为了构建我们的工作区,我们需要安装和配置 Anaconda。步骤如下:

  1. 安装 Anaconda
  2. 使用最新版本的 python 创建新环境
  3. 将包安装到你的环境中
  • 下载并安装 Anaconda

去 Anaconda 网站下载最新版本的 Anaconda,你可以使用 python 3.7 和 python 2.7 下载 Anaconda。虽然我个人更喜欢使用最新版本的 python,但有时 python 包需要特定版本的 python,因此需要设置多个 python 环境。安装好 Anaconda 后,启动它。

  • 在 Anaconda 中管理不同的环境

打开 Anaconda 后,你会看到 Anaconda 已经设置了一些工具和软件包,如 Jupyter、Spyder。注意,上面有一个安装 VS 代码的选项。

Anaconda Navigator 附带了预安装的默认软件包

同时,导航到左侧菜单中的环境。在这里,你会发现 Anaconda 已经配置了一个基本环境,你可以直接用它工作了。

Anaconda Navigator 界面显示安装在基本环境上的包

从这里可以选择要运行的环境,你还可以直接从终端运行 bash 命令。

通过 Anaconda Navigator 直接打开终端

虽然这里面已经安装了很多软件包,但是你可能想安装新的软件包或者用不同版本的 python 安装不同的包,因此你需要配置环境。

单击创建和配置新的 python 环境。

选择最新版本的 python 并再次单击「创建」进行确认。

Anaconda 也可以用在 R 中,但在本例中我们将使用 python。

配置环境需要几秒钟。几分钟后,你会注意到一个新的环境已经安装了一些默认软件包。一旦设置好 python 环境,你将主要使用终端安装软件包,并且你可能较少使用 Anaconda Navigator。

太棒了!现在我们只需要一个工作区来使用 Python 环境,这样我们就可以用我们的包运行脚本。你可以用 Anaconda 附带的 Jupyter notebook,但我喜欢用 VS Code,我会很快解释原因。

在 VS Code 中创建数据科学工作区


VS Code 是一个免费的代码编辑器,你可以根据需要定制。它是一个轻量级的 IDE,为在自己的自定义工作区中运行 python 提供了极好的支持。在上一章中,我们设置了 Anaconda 并安装了 VS Code。

打开 VS Code

第一次启动 VS Code 时的欢迎界面

VS Code 是一个功能强大、轻量级的代码编辑器,允许你为每个项目配置自己的工作区。为了测试,我创建了一个名为 DataScienceProject 的虚拟文件夹。

  1. 单击 Open Folder 并选择文件夹
  2. 转到菜单并选择「文件>将工作区另存为」
  3. 在文件夹中保存工作区文件

现在你已经在 VS Code 中设置了一个自定义工作区。工作区的好处是,你可以为每个单独的工作区进行自定义设置。

现在,在工作区中创建一个名为 helloworld.py 的新文件。

打开 helloworld.py。

将下面的代码复制到您的文件中并保存它。

代码语言:javascript复制
#%%
# This is the first cell of our Python code
print('Hello world!')

#%%
# This is another cell
print('Another cell for the world to see!')

这个时候,在打开文件时,你可能会收到各种各样的消息,比如「pylint package not installed」。这是因为 VS Code 自动识别出你正在编辑的是一个 python 文件。首先让我们看看是否可以运行我们的 python 文件。你可以直接在终端或从交互式 python 窗口运行它。交互式 python 窗口非常有用,因为它在调试代码时提供了更多的反馈,而且还允许你在 python 脚本中运行称为 cells 的不同代码段。

要运行脚本,请按 shift-enter。你也可以右键单击该文件并选择「在终端中运行 python 文件」或「在交互窗口中运行 python 文件」。

在运行第一个脚本之后,你会看到代码右侧的交互式 Python 窗口,并返回类似的内容。

代码语言:javascript复制
[1] # This is the first cell of our Python code...
Hello world!
[2] # This is another cell...
Another cell for the world to see!

祝贺你!你刚刚在 Visual Studio 代码中设置了一个工作区来运行 python 项目!现在,让我们更深入地研究一下,看看是否可以在我们的环境中安装新的包。

  • 管理终端内的包

现在我们运行了第一个脚本,你可能需要添加一个新的包。假设您的项目要求您连接到某个 Google API。Google 为我们提供了一个包来完成此操作,但这些包并没有安装在你的默认环境中。幸运的是,我们有很多可用的包。Anaconda 有自己的软件包存储库,还有更多的存储库可供我们查找软件包。我们在示例中寻找的包是 Google API Python Client。请执行下面这些步骤。

打开终端,确保你在基本环境中工作,终端展示的内容如下:

代码语言:javascript复制
(base) myMac:DataScienceProject myUser$

通过在终端中输入以下命令检查包是否已安装:

代码语言:javascript复制
conda list

这将返回当前安装在基本环境中的包列表。现在,通过在终端中运行以下命令来安装包:

代码语言:javascript复制
conda install -c conda-forge google-api-python-client 

包现在将安装在基本环境中。如果一切正常,您将在终端中看到以下消息(下面只是你应该看到的消息的一部分)。

代码语言:javascript复制
Collecting package metadata (current_repodata.json): done
Solving environment: done
## Package Plan ##
environment location: /Users/myUser/anaconda3
added / updated specs:
           - google-api-python-client
The following packages will be downloaded
...
...
...
Proceed ([y]/n)? y
...
Preparing transaction: done
Verifying transaction: done
Executing transaction: done

真是令人惊叹!我们已经在我们的环境中成功地安装了一个新的包。这将允许你导入包相关的库,并在脚本中使用 Google API Python Client。

但是,如果你已经在基本环境中运行了包,并且不想冒险,以免造成当前环境设置混乱呢?你可以使用新环境并为该环境安装不同的包。现在我们知道了如何安装一个包,接下来将展示如何从 VS Code 中更改你的 Python 环境。

  • 管理工作区中的 python 环境

除了在自己的自定义工作区中工作之外,你还可以在编辑器本身中管理 Anaconda。这样做的话,你就不必反复运行 Anaconda Navigator,只需直接从编辑器中运行一个 python 环境,这样你就可以继续编码了。

你注意到编辑器底部的蓝色滚动条了吗?它提供了你正在处理的代码的信息。在滚动条的最左边,你可以看到当前正在使用的解释器。在我的例子中使用的是:

代码语言:javascript复制
Python 3.7.3 64-bit ('base':conda)

如你所见,我正在 Anaconda 的基础环境中运行 python 3.7.3。它还会告诉你代码中是否存在任何问题、有多少行、多少列、多少空格、你当前选择编程语言等。

通过单击解释器,你可以选择其他解释器。例如,我们之前在 Anaconda 中创建的 python 环境。

单击你的解释器并选择我们先前创建的解释器。

如何选择不同的 python 解释器

现在,当你从基本解释器切换到新的解释器时,有时 jupyter 服务器启动会遇到问题。jupyter 服务器运行在内核上,内核在某种程度上是你的 Python 环境的引擎。jupyter 内核对于在 VS Code 中运行代码非常重要,尤其是在交互式 python 窗口中运行代码时尤为重要。如果你碰巧遇到这些错误,请在终端中

尝试以下操作:

在 MacOS 上:

代码语言:javascript复制
source activate <environmentnamehere>
pip install ipykernel
python -m ipykernel install --user

在 Windows 上:

代码语言:javascript复制
activate <environmentnamehere>
pip install ipykernel
python -m ipykernel install --user

这将在你的环境中安装一个内核。重新启动 VS Code 编辑器,并尝试在新选择的解释器(python37:conda)中运行代码。

如果一切顺利的话,恭喜你,你已经在 VS Code 中成功地设置了自己的工作区,现在可以将其用于 python 项目了!

写在最后


管理你的 Python 环境可能会让人头疼。了解如何管理你的环境和软件包会让你的工作更加灵活,并能防止某个环境突然停止工作的压力。这就是我向你展示如何切换环境和安装软件包的原因,因为这些是最容易遇到的错误。

当然,我还没有向你展示使用 VS Code 或 Anaconda 可以做的一切,因此我建议你接下来阅读以下文章:

  • Best packages for data science with Python(https://medium.com/analytics-vidhya/dont-miss-out-on-these-24-amazing-python-libraries-for-data-science-44aa66469a60)
  • An extensive list of extensions for Visual Studio Code(https://medium.com/@spp020/vs-code-extensions-for-complete-ide-experience-bca5bb2f0f90)
  • Using Version Control with GitHub for Visual Studio Code(https://medium.com/@brygrill/version-control-basics-with-github-and-vs-code-1c1906cadd33)

希望这本指南对你有所帮助,编码愉快!

via:https://towardsdatascience.com/setting-up-your-own-data-science-workspace-with-visual-studio-code-and-anaconda-python-22237590b4ed

0 人点赞