{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Applying CCM Using causal-ccm package\n", "In this section we show how we can use `causal-ccm` package to infer causality." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Install CCM and Load Packages" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# !pip install causal-ccm" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "from causal_ccm.causal_ccm import ccm\n", "import pandas as pd\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "\n", "### Just to remove warnings to prettify the notebook. \n", "import warnings\n", "warnings.filterwarnings(\"ignore\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Load Dataset" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
TimeRainONINIADam
000.0-0.738.225693100.70
110.0-0.757.996530100.63
220.0-0.749.119213100.56
330.0-0.747.034720100.55
440.0-0.742.223380100.48
\n", "
" ], "text/plain": [ " Time Rain ONI NIA Dam\n", "0 0 0.0 -0.7 38.225693 100.70\n", "1 1 0.0 -0.7 57.996530 100.63\n", "2 2 0.0 -0.7 49.119213 100.56\n", "3 3 0.0 -0.7 47.034720 100.55\n", "4 4 0.0 -0.7 42.223380 100.48" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.read_csv('../data/Ipo_dataset.csv')\n", "df.head()" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [], "source": [ "# get the variables we want to check causality on\n", "X = df['Rain']\n", "Y = df['Dam']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Run CCM" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "# inputs\n", "tau = 1 # time lag\n", "E = 2 # shadow manifold embedding dimensions\n", "L = len(X) # length of time period to consider\n", "\n", "# if we wish to check if X causes Y\n", "ccm1 = ccm(X, Y, tau, E, L)" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# visualize sample cross mapping\n", "ccm1.visualize_cross_mapping()" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(0.2775286388886883, 5.428162535446003e-126)" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# causality X -> Y\n", "# returns: (correlation (\"strength\" of causality), p-value(significance))\n", "corr_, p = ccm1.causality()\n", "corr_, p" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# visualize correlation of X->Y\n", "# stronger correlation = stronger causal relationship\n", "ccm1.plot_ccm_correls()" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "X->Y r 0.31 p value 0.0\n", "Y->X r 0.02 p value 0.0775\n" ] }, { "data": { "text/plain": [ "" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "# checking convergence\n", "# Looking at \"convergence\"\n", "L_range = range(5, len(X), 1000) # L values to test\n", "tau = 1\n", "E = 2\n", "\n", "Xhat_My, Yhat_Mx = [], [] # correlation list\n", "for L in L_range: \n", " ccm_XY = ccm(X, Y, tau, E, L) # define new ccm object # Testing for X -> Y\n", " ccm_YX = ccm(Y, X, tau, E, L) # define new ccm object # Testing for Y -> X \n", " Xhat_My.append(ccm_XY.causality()[0]) \n", " Yhat_Mx.append(ccm_YX.causality()[0]) \n", " \n", "print('X->Y r', np.round(Xhat_My[-1], 2), 'p value', np.round(ccm_XY.causality()[1], 4))\n", "print('Y->X r', np.round(Yhat_Mx[-1], 2), 'p value', np.round(ccm_YX.causality()[1], 4)) \n", " \n", "# plot convergence as L->inf. Convergence is necessary to conclude causality\n", "plt.figure(figsize=(5,5))\n", "plt.plot(L_range, Xhat_My, label='$\\hat{X}(t)|M_y$')\n", "plt.plot(L_range, Yhat_Mx, label='$\\hat{Y}(t)|M_x$')\n", "plt.xlabel('L', size=12)\n", "plt.ylabel('correl', size=12)\n", "plt.legend(prop={'size': 12}) " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Interpretation" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "From the charts above, we find significant convergent cross mapping for the effect of rain $X$ on dam levels $Y$. Note that for $X -> Y$ cases, p-value is 0.0 which means the causality is significant while for $Y -> X$, p value is > 0.05. We can then say that rain drives dam levels but dam levels do not drive rain." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.4" } }, "nbformat": 4, "nbformat_minor": 2 }