気候予測データの解析環境を構築する。その2―python開発環境を構築する

はじめに

WSL2にインストールしたUbuntuには、すでにPython3.10.?がインストールされており、すぐに使用することができるのですが、データ分析に役立つライブラリを活用することにより、効率的な処理が可能となります。

本研究室では、Python3の標準パッケージ管理ツールであるpip3を使用しています。Python 3.4以降には、標準で付属していますので、そのままコマンドとして使うことができます。

pythonライブラリの追加

データ解析を容易にする機能を提供する代表的なライブラリとして、

  • numpy
  • scipy
  • pandas

データの可視化ライブラリとして、

  • matplotlib
  • plotly

を、pip3でインストールします。

sudo pip3 install numpy scipy pandas
sudo pip3 install plotly kaleido matplotlib
sudo pip3 install ipympl pillow

jupyter-notebookのインストール

Jupyter NotebookはPythonのコードを対話的に実行し、その結果を表示・保存することのできるアプリケーションです。

aptでインストールします

sudo apt install jupyter-notebook

VScodeのインストール

本研究室ではVSCodeでJupyter Notebookを使うことより、対話型のデータ解析環境を構築しています。

ここではdebファイルからインストールする方法を紹介します。

インストールファイル(.deb)のダウンロード

Windowsで以下のページにアクセスし、.debファイルをダウンロードします。

code.visualstudio.com

WSL2-Ubuntuにインストール

Ubuntuのターミナルから、入手したファイルをインストールします。

cd /mnt/c/Users/kazuh/Downloads/
sudo apt install ./code_????-??????????_amd64.deb
# ????-?????????? はバーションによって異なります。

VScodeの設定

「アプリケーションメニュー」→「開発」→「Visual Studio Code」でVScodeを起動します。


日本語化

このままではメニューが英語表示なので、拡張機能をインストールして日本語化します。

左の"Activity Bar"の”Extensions"をクリック

検索窓に「japanese」と入力し、"Japanese Language Pack for Visual Stuido Code"の"install"をクリック

「Change Language and Restart」をクリックしてVSCodeを再起動すると日本語表示される。

拡張機能の設定

VSCodePythonとJupyterNotebookを扱うための拡張機能をインストールします。

検索窓に「python」と入力し、"Python"の"install"をクリック。

Jupyter関連の拡張機能も同時にインストールされる。

python環境のテスト

実際に動くか確認してみます。

対話型ウインドウの起動

「表示」→「コマンドパレット」でコマンドパレットを開き、検索窓に「jupyter」と入力し、検索結果から”Jupyter:対話型ウインドウを作成する"を選択する。

interactiveウィンドウが立ちあがる。

下部の入力窓にコードを入力し、"Shift"を押しながら"Enter"するか右側の再生マークを押すことで、実行され、結果が表示さます。

テスト1

こんにちは、世界!

print("Hello World")

スト2

forループを使って1~10までを表示

i = 1
while i <= 10:
    print(i)
    i = i + 1

テスト3

numpyのテスト

import numpy as np
a = np.arange(15).reshape(3, 5)
a

テスト4

pandasのテスト

import pandas as pd
dates = pd.date_range("20130101", periods=6)
df = pd.DataFrame(np.random.randn(6, 4), index=dates, columns=list("ABCD"))
df

テスト5

plotlyのテスト

import plotly.express as px
fig = px.bar(x=["a", "b", "c"], y=[1, 3, 2])
fig.show()


テスト6

matplotlibのテスト

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 2 * np.pi, 200)
y = np.sin(x)

fig, ax = plt.subplots()
ax.plot(x, y)
plt.show()


動きましたか? 今回はここまで。次回は地理空間情報の解析環境を構築していきます。