Skip to main content

A module for py4macro.github.io

Project description

PyPI version fury.io PyPI - Downloads CodeQL

はじめに

Pythonで学ぶマクロ経済学 (中級+レベル)で使うモジュール。

以下が含まれている。

  • Hodrick-Prescottフィルターを使い時系列データのトレンドを返すtrend()関数
  • DataFrameを全て表示するshow()関数
  • n個の浮動小数点数から構成されるリストを返すxvalues()関数
  • オブジェクトの属性(_もしくは__が付いた属性以外)を表示するsee()関数
  • 後退期間にグレーの塗りつぶしを追加するfukyo()関数
  • 後退期間にグレーの塗りつぶしを追加するrecessions()デコレーター
  • データ・セット
    • Big Macインデックス
    • IMF World Economic Outlook 2024
    • Maddison Project Database 2023
    • Penn World Tables 10.01
    • 日本の四半期データ(GDPなど)
    • 日本の年次データ(GDPなど)
    • 日本の四半期データ(マネーストックなど)
    • 177ヵ国のマネーストックなど
    • 円/ドル為替レートなど
    • 景気循環日付と拡張・後退期間
    • 政府負債に関する長期時系列データ

使い方

import py4macro

Hodrick-Prescottフィルターによるトレンド抽出

py4macro.trend(s,lamb=1600)

引数:

  • sSeriesもしくは1列のDataFrameとし,行のラベルはDatetimeIndexにすること。
  • lamb: HPフィルターのlambda(デフォルトは四半期用のデータでは通常の値である1600としている)

戻り値:

Hodrick-Prescottフィルターで計算したtrend(トレンド)のSeries

:

py4macro.trend(df.loc[:,'gdp'])

DataFrameの行・列を全て表示する

py4macro.show(df)

引数

  • dfDataFrame

戻り値

DataFrameの表示のみ

n個の数値から構成されるリストを作成する

py4macro.xvalues(l, h, n)

引数

  • l:最小値
  • h:最大値
  • n:要素数

戻り値

  • n個の浮動小数点数のリスト

:

py4macro.xvalues(-1, 1, 5)

>>> [-1.0, -0.5, 0.0, 0.5, 1.0]

オブジェクトの属性(_もしくは__が付いた属性以外)を表示する

py4macro.see(obj, col=4, width=70)

引数:

  • obj: 属性を調べるオブジェクト
  • col: 表示の列の数(デフォルトは4)
  • width: 表示の幅(デフォルトは70)   (列の幅は width/col 以上である最小整数となる)

戻り値:

  • None (表示のみ)

例:整数型である100の属性を調べる。

py4macro.see(100)

>>> .as_integer_ratio   .bit_count       .bit_length      .conjugate
>>> .denominator        .from_bytes      .imag            .numerator
>>> .real               .to_bytes

横軸にDatetimeIndexを使うプロットに対して後退期間にグレーの塗りつぶしを追加する関数

  • fukyo()関数は後退期間の塗りつぶしを追加する
py4macro.fukyo(ax, start=1980, end=2999, color='k', alpha='0.1')

引数

  • axmatplotlibの軸
  • startfukyo()関数を適用し始める年(デフォルトは1980
  • endfukyo()関数を適用し終わる年(デフォルトは2999
  • color:色(デフォルトは黒)
  • alpha:透明度(デフォルトは0.1

戻り値

  • なし(表示のみ)

<例1:一つの図>

fig, ax = plt.subplots()
ax.plot(...)
fukyo(ax)

<例2:一つの図>

ax = <DataFrame もしくは Series>.plot()
fukyo(ax, start=1960, color='red')

<例3:複数の図の中で一つだけに追加>

fig, ax = plt.subplots(2,1)
ax[0].plot(...)
ax[1].plot(...)
fukyo(ax[0], start=1970, end=2005, color='grey', alpha=0.2)

横軸にDatetimeIndexを使うプロットに対して後退期間にグレーの塗りつぶしを追加するデコレーター

  • @py4macro.recessions()は全ての軸に後退期間の塗りつぶしを追加する
@py4macro.recessions(start=1980, end=2900, color='k', alpha=0.1)
<関数>

引数

  • startfukyo()関数を適用し始める年(デフォルトは1980
  • endfukyo()関数を適用し終わる年(デフォルトは2999
  • color:色(デフォルトは黒)
  • alpha:透明度(デフォルトは`0.1)

<例1:一つの図をプロット(軸を返さない)>

@py4macro.recessions()
def plot():
    <DataFrame もしくは Series>.plot()

<例2:一つの図をプロット(軸を返す)>

@py4macro.recessions(start=1960, color='red')
def plot():
    ax = <DataFrame もしくは Series>.plot()
    return ax

<例3:一つの図をプロット>

@py4macro.recessions(end=2000, alpha=0.9)
def plot():
    fig, ax = plt.subplots()
    ax.plot(...)
    return ax       # 省略すると軸を返さない

<例4:複数の図をプロット>

@py4macro.recessions(start=1975, color='green', alpha=0.2)
def plot():
    ax = <DataFrame>.plot(subplots=True, layout=(2,2))
    return ax       # この行は必須

<例5:複数の図をプロット>

@py4macro.recessions(start=1975, end=2010, color='grey', alpha=0.3)
def plot():
    fig, ax = plt.subplots(2, 1)
    ax[0].plot(...)
    ax[1].plot(...)
    return ax       # この行は必須

データ・セット

py4macro.data(dataset=None, description=0)

引数

  • dataset: (文字列)

    • 'bigmac': Big Macインデックス
    • 'debts': 政府負債に関する長期時系列データ
    • 'ex': 円/ドル為替レートなど
    • 'jpn-money': 日本の月次データ(CPIとマネーストック)
    • 'jpn-q': 日本の四半期データ(GDPなど)
    • 'mad': country data of Maddison Project Database 2023
    • 'mad-region': regional data of Maddison Project Database 2023
    • 'pwt': Penn World Table 10.01
    • 'weo': IMF World Economic Outlook 2024
    • 'world-money': 177ヵ国のマネーストックなど
  • description (デフォルト:0, 整数型):

    • 0: データのDataFrameを返す
      • 全てのデータセット
    • 1: 変数の定義を全て表示する
      • 全てのデータセット
    • 2: 変数の定義のDataFrameを返す
      • 'pwt''weo'のみ

返り値DataFrameもしくはDataFrameの表示

例1:IMF World Economic OutlookのDataFrameを返す

py4macro.data('weo')

例2:IMF World Economic Outlookの変数定義の全てを表示する

py4macro.data('weo',description=1)

例3:IMF World Economic Outlookの変数定義のDataFrameを返す

py4macro.data('weo',description=2)

インストール方法

pip install py4macro

or

pip install git+https://github.com/Py4Macro/py4macro.git

or

git clone https://github.com/Py4Macro/py4macro.git
cd py4macro
pip install .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

py4macro-0.8.13.tar.gz (4.5 MB view details)

Uploaded Source

Built Distribution

py4macro-0.8.13-py2.py3-none-any.whl (4.5 MB view details)

Uploaded Python 2 Python 3

File details

Details for the file py4macro-0.8.13.tar.gz.

File metadata

  • Download URL: py4macro-0.8.13.tar.gz
  • Upload date:
  • Size: 4.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for py4macro-0.8.13.tar.gz
Algorithm Hash digest
SHA256 80bd411c888aa81b1b05230225ad3a48dba6198f0668ab42ceba7f8797a930c0
MD5 896a67ea4dd27c93e1636a7c2b637981
BLAKE2b-256 340b4e4b8acf2dbc4e573cf82113dde1d9fc248798891b53934fcc53a83fcce4

See more details on using hashes here.

File details

Details for the file py4macro-0.8.13-py2.py3-none-any.whl.

File metadata

  • Download URL: py4macro-0.8.13-py2.py3-none-any.whl
  • Upload date:
  • Size: 4.5 MB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for py4macro-0.8.13-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7593790e7347f32d8fb699b8ca96e1c708a0546ddff23d331d4e7af15ef7ec5a
MD5 b9966755e3589edac99bafed7aedf6ad
BLAKE2b-256 e0b1e2a926f24ba5ae8b1b4d11563184e870f455fc45dc4c91c5c961c59faa77

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page