note.nkmk.me

pandasモジュールからNumPyモジュールにアクセスする方法

Date: 2018-08-09 / tags: Python, pandas, NumPy
このエントリーをはてなブックマークに追加

pandasをインポートすると同時にNumPyもインポートされ、pd.npでNumPyモジュールにアクセスできる。pandasをインポートするだけでNumPyをインポートせずにNumPyの関数などが使用可能。

Jupyter Notebookなどでpandasをインポートして使っているときにNumPyの関数などを使いたくなった場合に NumPyを追加でインポートする必要がないので、書き捨てのコードを書いているときなどは便利。

もちろん、NumPyの関数などを何度も使うのであれば明示的にNumPyをインポートしておいたほうがコードとしては分かりやすい。

ここでは以下の内容について説明する。

  • pd.npnpは同一オブジェクト
  • pd.npの使い方
スポンサーリンク

pd.npとnpは同一オブジェクト

以下の通りpd.npprint()で出力すると、NumPyモジュールであることが分かる。

import pandas as pd

print(pd)
# <module 'pandas' from '/usr/local/lib/python3.7/site-packages/pandas/__init__.py'>

print(pd.np)
# <module 'numpy' from '/usr/local/lib/python3.7/site-packages/numpy/__init__.py'>

続けてNumPyもインポートして比較すると、pd.npnpは同一オブジェクトであることが確認できる。当然ながらそれに含まれる関数などのオブジェクトも同一。

import numpy as np

print(pd.np is np)
# True

print(pd.np.mean is np.mean)
# True

pd.npの使い方

NumPyをインポートしてnpとして使うところをpd.npに置き換えればOK。

a = pd.np.arange(12).reshape(3, 4)

print(a)
# [[ 0  1  2  3]
#  [ 4  5  6  7]
#  [ 8  9 10 11]]

print(type(a))
# <class 'numpy.ndarray'>
スポンサーリンク
シェア
このエントリーをはてなブックマークに追加

関連カテゴリー

関連記事