Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ repos:
hooks:
- id: black
- id: black-jupyter
exclude: docs/01python/07for/_samples/sum_1to100.ipynb
exclude: .*sum_1to100.ipynb
- repo: https://github.com/pre-commit/mirrors-eslint
rev: v8.26.0
hooks:
Expand All @@ -40,15 +40,15 @@ repos:
rev: 1.5.3
hooks:
- id: nbqa-check-ast
exclude: docs/01python/05function/_samples/indent.ipynb
exclude: .*indent.ipynb
# - id: nbqa-flake8
- id: nbqa-isort
# - id: nbqa-mypy
# - id: nbqa-pylint
- id: nbqa-pyupgrade
# - id: nbqa-yapf
- id: nbqa-autopep8
exclude: docs/01python/07for/_samples/sum_1to(20|100).ipynb
exclude: .*sum_1to(20|100).ipynb
# - id: nbqa-pydocstyle
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.3.0
Expand Down
65 changes: 65 additions & 0 deletions docs/01python/07pip/_samples/pandas.ipynb
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
{
"nbformat": 4,
"nbformat_minor": 2,
"metadata": {},
"cells": [
{
"metadata": {},
"source": [
"!pip install pandas"
],
"cell_type": "code",
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"Defaulting to user installation because normal site-packages is not writeable\n",
"Collecting pandas\n",
" Downloading pandas-1.5.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (12.1 MB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m12.1/12.1 MB\u001b[0m \u001b[31m12.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m00:01\u001b[0m00:01\u001b[0m\n",
"\u001b[?25hCollecting pytz>=2020.1\n",
" Downloading pytz-2022.6-py2.py3-none-any.whl (498 kB)\n",
"\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m498.1/498.1 KB\u001b[0m \u001b[31m10.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0ma \u001b[36m0:00:01\u001b[0m\n",
"\u001b[?25hRequirement already satisfied: numpy>=1.21.0 in /home/w/.local/lib/python3.10/site-packages (from pandas) (1.23.3)\n",
"Requirement already satisfied: python-dateutil>=2.8.1 in /home/w/.local/lib/python3.10/site-packages (from pandas) (2.8.2)\n",
"Requirement already satisfied: six>=1.5 in /usr/lib/python3/dist-packages (from python-dateutil>=2.8.1->pandas) (1.16.0)\n",
"Installing collected packages: pytz, pandas\n",
"Successfully installed pandas-1.5.2 pytz-2022.6\n"
]
}
],
"execution_count": null
},
{
"metadata": {},
"source": [
"import pandas as pd"
],
"cell_type": "code",
"outputs": [],
"execution_count": null
},
{
"metadata": {},
"source": [
"s1 = pd.Series([0, 1, 2])\n",
"print(s1)"
],
"cell_type": "code",
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"0 0\n",
"1 1\n",
"2 2\n",
"dtype: int64\n"
]
}
],
"execution_count": null
}
]
}
45 changes: 45 additions & 0 deletions docs/01python/07pip/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
sidebar_position: 7
---

import ViewSource from "@site/src/components/ViewSource/ViewSource";
import Answer from "@site/src/components/Answer";

# パッケージのインストール

## pip

前項で、Python では様々なライブラリを使用することができると書きました。一部のプリインストールされているライブラリは先程のようにただファイルの先頭で `import ライブラリ名` のように書くだけでライブラリを使用することができますが、多くのライブラリはこれだけでは使用することができません。

Python では、パッケージのインストールを行うユーティリティとして、pip(Pip Installs Packages, Pip Installs Python) が使われます。

## pip の使い方

Google Colaboratory で pip を使ってパッケージをインストールするには、`!pip install ライブラリ名` のように書いてから、前項のように `import ライブラリ名` と書くことで任意のライブラリを使用することができます。

例として、Python の代表的なデータ解析を支援するパッケージである `pandas` パッケージを使ってみましょう。

次のようにすると、確かに `pandas` パッケージを使うことができたことが確認できます。`import pandas as pd` というのは、`pandas` パッケージを `pd` という名前でインポートするという意味です。

<ViewSource path="_samples/pandas.ipynb" />

:::info
Google Colaboratory などの Jupyter Notebook を使った方法ではなく、直接 `.py` ファイルを使った方法の場合は、pip の使い方が異なります。

ターミナルなどで次のコマンドを実行すると、パッケージをインストールできます。

```shell
pip install pandas
```

その後、次のようなコードを実行すると、パッケージを使用することができます。

```python title=hello_pandas.py
import pandas as pd


s1 = pd.Series([0, 1, 2])
print(s1)
```

:::
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
sidebar_position: 7
sidebar_position: 8
---

import ViewSource from "@site/src/components/ViewSource/ViewSource";
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
sidebar_position: 8
sidebar_position: 9
---

import ViewSource from "@site/src/components/ViewSource/ViewSource";
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
sidebar_position: 9
sidebar_position: 10
---

import ViewSource from "@site/src/components/ViewSource/ViewSource";
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
sidebar_position: 10
sidebar_position: 11
---

import ViewSource from "@site/src/components/ViewSource/ViewSource";
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
sidebar_position: 11
sidebar_position: 12
---

import ViewSource from "@site/src/components/ViewSource/ViewSource";
Expand Down
8 changes: 4 additions & 4 deletions docs/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,15 @@ Python やアルゴリズムについて簡単にまとめていこうかなと

## 更新履歴

11/25 練習問題の項を執筆 [練習問題](/docs/01python/11practice/)
11/25 「練習問題の項」、「パッケージをインストール」の項を執筆 [練習問題](/docs/01python/12practice/)、[パッケージをインストール](/docs/01python/07pip/)

11/13 第五週の分を執筆 [ライフゲーム](/docs/02advanced/01life-game/)

11/6 第四週の分を執筆 [多次元配列](/docs/01python/09multi-array/)、[条件分岐](/docs/01python/10if/)
11/6 第四週の分を執筆 [多次元配列](/docs/01python/10multi-array/)、[条件分岐](/docs/01python/11if/)

11/6 range 関数についてを補足 [この下](/docs/01python/08array/#%E5%95%8F%E9%A1%8C-1)
11/6 range 関数についてを補足 [この下](/docs/01python/09array/#%E5%95%8F%E9%A1%8C-1)

10/30 第三週の分を執筆 [繰り返し処理](/docs/01python/07for/)、[配列](/docs/01python/08array/)
10/30 第三週の分を執筆 [繰り返し処理](/docs/01python/08for/)、[配列](/docs/01python/09array/)

10/23 第二週の分を執筆 [関数](/docs/01python/05function/)、[ライブラリ](/docs/01python/06library/)

Expand Down