diff --git a/_modules/index.html b/_modules/index.html index 410d593..6c0f3c5 100644 --- a/_modules/index.html +++ b/_modules/index.html @@ -29,7 +29,7 @@ - + diff --git a/_modules/iot/inverse_optimal_tax.html b/_modules/iot/inverse_optimal_tax.html index a913e3d..be90c1a 100644 --- a/_modules/iot/inverse_optimal_tax.html +++ b/_modules/iot/inverse_optimal_tax.html @@ -29,7 +29,7 @@ - + @@ -330,17 +330,18 @@

Source code for iot.inverse_optimal_tax

-import numpy as np
-import pandas as pd
-import scipy.stats as st
-import scipy
-from statsmodels.nonparametric.kernel_regression import KernelReg
-from scipy.interpolate import UnivariateSpline
+import numpy as np
+import pandas as pd
+import scipy.stats as st
+import scipy
+from statsmodels.nonparametric.kernel_regression import KernelReg
+from scipy.interpolate import UnivariateSpline
+from scipy.linalg import lstsq
 
 
 
[docs] -class IOT: +class IOT: """ Constructor for the IOT class. @@ -368,7 +369,7 @@

Source code for iot.inverse_optimal_tax

         class instance: IOT
     """
 
-    def __init__(
+    def __init__(
         self,
         data,
         income_measure="e00200",
@@ -417,7 +418,7 @@ 

Source code for iot.inverse_optimal_tax

 
 
[docs] - def df(self): + def df(self): """ Return all vector attributes in a DataFrame format @@ -445,7 +446,7 @@

Source code for iot.inverse_optimal_tax

 
 
[docs] - def compute_mtr_dist( + def compute_mtr_dist( self, data, weight_var, income_measure, mtr_smoother, mtr_smooth_param ): """ @@ -466,22 +467,23 @@

Source code for iot.inverse_optimal_tax

                 * mtr_prime (array_like): rate of change in marginal tax rates
                     for each income bin
         """
-        bins = 1000  # number of equal-width bins
-        data.loc[:, ["z_bin"]] = pd.cut(
-            data[income_measure], bins, include_lowest=True
-        )
-        binned_data = pd.DataFrame(
-            data[["mtr", income_measure, "z_bin", weight_var]]
-            .groupby(["z_bin"], observed=False)
-            .apply(lambda x: wm(x[["mtr", income_measure]], x[weight_var]))
-        )
-        # make column 0 into two columns
-        binned_data[["mtr", income_measure]] = pd.DataFrame(
-            binned_data[0].tolist(), index=binned_data.index
-        )
-        binned_data.drop(columns=0, inplace=True)
-        binned_data.reset_index(inplace=True)
+
         if mtr_smoother == "kreg":
+            bins = 1000  # number of equal-width bins
+            data.loc[:, ["z_bin"]] = pd.cut(
+                data[income_measure], bins, include_lowest=True
+            )
+            binned_data = pd.DataFrame(
+                data[["mtr", income_measure, "z_bin", weight_var]]
+                .groupby(["z_bin"], observed=False)
+                .apply(lambda x: wm(x[["mtr", income_measure]], x[weight_var]))
+            )
+            # make column 0 into two columns
+            binned_data[["mtr", income_measure]] = pd.DataFrame(
+                binned_data[0].tolist(), index=binned_data.index
+            )
+            binned_data.drop(columns=0, inplace=True)
+            binned_data.reset_index(inplace=True)
             mtr_function = KernelReg(
                 binned_data["mtr"].dropna(),
                 binned_data[income_measure].dropna(),
@@ -489,17 +491,32 @@ 

Source code for iot.inverse_optimal_tax

                 reg_type="ll",
             )
             mtr, _ = mtr_function.fit(self.z)
+            mtr_prime = np.gradient(mtr, edge_order=2)
+        elif mtr_smoother == "HSV":
+            # estimate the HSV function on mtrs via weighted least squares
+            X = np.log(data[income_measure].values)
+            X = np.column_stack((np.ones(len(X)), X))
+            w = np.array(data[weight_var].values)
+            w_sqrt = np.sqrt(w)
+            y = np.log(1-data["mtr"].values)
+            X_weighted = X * w_sqrt[:, np.newaxis]
+            y_weighted = y * w_sqrt
+            coef, _, _, _ = lstsq(X_weighted, y_weighted)
+            tau = -coef[1]
+            lambda_param = np.exp(coef[0]) / (1-tau)
+            mtr = 1 - lambda_param * (1-tau) * self.z ** (-tau)
+            mtr_prime = lambda_param * tau * (1-tau) * self.z ** (-tau - 1)
         else:
             print("Please enter a value mtr_smoother method")
             assert False
-        mtr_prime = np.gradient(mtr, edge_order=2)
+        
 
         return mtr, mtr_prime
[docs] - def compute_income_dist( + def compute_income_dist( self, data, income_measure, weight_var, dist_type, kde_bw=None ): """ @@ -579,7 +596,7 @@

Source code for iot.inverse_optimal_tax

             f_prime = np.gradient(f, edge_order=2)
         elif dist_type == "Pln":
 
-            def pln_pdf(y, mu, sigma, alpha):
+            def pln_pdf(y, mu, sigma, alpha):
                 x1 = alpha * sigma - (np.log(y) - mu) / sigma
                 phi = st.norm.pdf((np.log(y) - mu) / sigma)
                 R = (1 - st.norm.cdf(x1)) / (st.norm.pdf(x1) + 1e-15)
@@ -587,7 +604,7 @@ 

Source code for iot.inverse_optimal_tax

                 pdf = alpha / y * phi * R
                 return pdf
 
-            def neg_weighted_log_likelihood(params, data, weights):
+            def neg_weighted_log_likelihood(params, data, weights):
                 mu, sigma, alpha = params
                 likelihood = np.sum(
                     weights * np.log(pln_pdf(data, mu, sigma, alpha) + 1e-15)
@@ -595,7 +612,7 @@ 

Source code for iot.inverse_optimal_tax

                 # 1e-15 to avoid log(0)
                 return -likelihood
 
-            def fit_pln(data, weights, initial_guess):
+            def fit_pln(data, weights, initial_guess):
                 bounds = [(None, None), (0.01, None), (0.01, None)]
                 result = scipy.optimize.minimize(
                     neg_weighted_log_likelihood,
@@ -623,7 +640,7 @@ 

Source code for iot.inverse_optimal_tax

                 data[income_measure], data[weight_var], initial_guess
             )
 
-            def pln_cdf(y, mu, sigma, alpha):
+            def pln_cdf(y, mu, sigma, alpha):
                 x1 = alpha * sigma - (np.log(y) - mu) / sigma
                 R = (1 - st.norm.cdf(x1)) / (st.norm.pdf(x1) + 1e-12)
                 CDF = (
@@ -632,7 +649,7 @@ 

Source code for iot.inverse_optimal_tax

                 )
                 return CDF
 
-            def pln_dpdf(y, mu, sigma, alpha):
+            def pln_dpdf(y, mu, sigma, alpha):
                 x = (np.log(y) - mu) / sigma
                 R = (1 - st.norm.cdf(alpha * sigma - x)) / (
                     st.norm.pdf(alpha * sigma - x) + 1e-15
@@ -658,7 +675,7 @@ 

Source code for iot.inverse_optimal_tax

 
 
[docs] - def sw_weights(self): + def sw_weights(self): r""" Returns the social welfare weights for a given tax policy. @@ -681,26 +698,28 @@

Source code for iot.inverse_optimal_tax

             + ((self.theta_z * self.eti * self.mtr) / (1 - self.mtr))
             + ((self.eti * self.z * self.mtr_prime) / (1 - self.mtr) ** 2)
         )
-        integral = np.trapz(g_z, self.z)
-        # g_z = g_z / integral
+        integral = np.trapz(g_z * self.f, self.z)
+        g_z = g_z / integral
+
         # use Lockwood and Weinzierl formula, which should be equivalent but using numerical differentiation
         bracket_term = (
             1
             - self.F
             - (self.mtr / (1 - self.mtr)) * self.eti * self.z * self.f
         )
-        # d_dz_bracket = np.gradient(bracket_term, edge_order=2)
-        d_dz_bracket = np.diff(bracket_term) / np.diff(self.z)
-        d_dz_bracket = np.append(d_dz_bracket, d_dz_bracket[-1])
+        d_dz_bracket = np.gradient(bracket_term, edge_order=2)
+        # d_dz_bracket = np.diff(bracket_term) / np.diff(self.z)
+        # d_dz_bracket = np.append(d_dz_bracket, d_dz_bracket[-1])
         g_z_numerical = -(1 / self.f) * d_dz_bracket
-        integral = np.trapz(g_z_numerical, self.z)
-        # g_z_numerical = g_z_numerical / integral
+        integral = np.trapz(g_z_numerical * self.f, self.z)
+        g_z_numerical = g_z_numerical / integral
+        
         return g_z, g_z_numerical
-def find_eti(iot1, iot2, g_z_type="g_z"): +def find_eti(iot1, iot2, g_z_type="g_z"): """ This function solves for the ETI that would result in the policy represented via MTRs in iot2 be consistent with the @@ -737,7 +756,7 @@

Source code for iot.inverse_optimal_tax

     return eti_beliefs_lw, eti_beliefs_jjz
 
 
-def wm(value, weight):
+def wm(value, weight):
     """
     Weighted mean function that allows for zero division
 
diff --git a/_static/pygments.css b/_static/pygments.css
index 012e6a0..d7dd577 100644
--- a/_static/pygments.css
+++ b/_static/pygments.css
@@ -6,11 +6,11 @@ html[data-theme="light"] .highlight span.linenos.special { color: #000000; backg
 html[data-theme="light"] .highlight .hll { background-color: #fae4c2 }
 html[data-theme="light"] .highlight { background: #fefefe; color: #080808 }
 html[data-theme="light"] .highlight .c { color: #515151 } /* Comment */
-html[data-theme="light"] .highlight .err { color: #a12236 } /* Error */
-html[data-theme="light"] .highlight .k { color: #6730c5 } /* Keyword */
-html[data-theme="light"] .highlight .l { color: #7f4707 } /* Literal */
+html[data-theme="light"] .highlight .err { color: #A12236 } /* Error */
+html[data-theme="light"] .highlight .k { color: #6730C5 } /* Keyword */
+html[data-theme="light"] .highlight .l { color: #7F4707 } /* Literal */
 html[data-theme="light"] .highlight .n { color: #080808 } /* Name */
-html[data-theme="light"] .highlight .o { color: #00622f } /* Operator */
+html[data-theme="light"] .highlight .o { color: #00622F } /* Operator */
 html[data-theme="light"] .highlight .p { color: #080808 } /* Punctuation */
 html[data-theme="light"] .highlight .ch { color: #515151 } /* Comment.Hashbang */
 html[data-theme="light"] .highlight .cm { color: #515151 } /* Comment.Multiline */
@@ -18,135 +18,135 @@ html[data-theme="light"] .highlight .cp { color: #515151 } /* Comment.Preproc */
 html[data-theme="light"] .highlight .cpf { color: #515151 } /* Comment.PreprocFile */
 html[data-theme="light"] .highlight .c1 { color: #515151 } /* Comment.Single */
 html[data-theme="light"] .highlight .cs { color: #515151 } /* Comment.Special */
-html[data-theme="light"] .highlight .gd { color: #005b82 } /* Generic.Deleted */
+html[data-theme="light"] .highlight .gd { color: #005B82 } /* Generic.Deleted */
 html[data-theme="light"] .highlight .ge { font-style: italic } /* Generic.Emph */
-html[data-theme="light"] .highlight .gh { color: #005b82 } /* Generic.Heading */
+html[data-theme="light"] .highlight .gh { color: #005B82 } /* Generic.Heading */
 html[data-theme="light"] .highlight .gs { font-weight: bold } /* Generic.Strong */
-html[data-theme="light"] .highlight .gu { color: #005b82 } /* Generic.Subheading */
-html[data-theme="light"] .highlight .kc { color: #6730c5 } /* Keyword.Constant */
-html[data-theme="light"] .highlight .kd { color: #6730c5 } /* Keyword.Declaration */
-html[data-theme="light"] .highlight .kn { color: #6730c5 } /* Keyword.Namespace */
-html[data-theme="light"] .highlight .kp { color: #6730c5 } /* Keyword.Pseudo */
-html[data-theme="light"] .highlight .kr { color: #6730c5 } /* Keyword.Reserved */
-html[data-theme="light"] .highlight .kt { color: #7f4707 } /* Keyword.Type */
-html[data-theme="light"] .highlight .ld { color: #7f4707 } /* Literal.Date */
-html[data-theme="light"] .highlight .m { color: #7f4707 } /* Literal.Number */
-html[data-theme="light"] .highlight .s { color: #00622f } /* Literal.String */
+html[data-theme="light"] .highlight .gu { color: #005B82 } /* Generic.Subheading */
+html[data-theme="light"] .highlight .kc { color: #6730C5 } /* Keyword.Constant */
+html[data-theme="light"] .highlight .kd { color: #6730C5 } /* Keyword.Declaration */
+html[data-theme="light"] .highlight .kn { color: #6730C5 } /* Keyword.Namespace */
+html[data-theme="light"] .highlight .kp { color: #6730C5 } /* Keyword.Pseudo */
+html[data-theme="light"] .highlight .kr { color: #6730C5 } /* Keyword.Reserved */
+html[data-theme="light"] .highlight .kt { color: #7F4707 } /* Keyword.Type */
+html[data-theme="light"] .highlight .ld { color: #7F4707 } /* Literal.Date */
+html[data-theme="light"] .highlight .m { color: #7F4707 } /* Literal.Number */
+html[data-theme="light"] .highlight .s { color: #00622F } /* Literal.String */
 html[data-theme="light"] .highlight .na { color: #912583 } /* Name.Attribute */
-html[data-theme="light"] .highlight .nb { color: #7f4707 } /* Name.Builtin */
-html[data-theme="light"] .highlight .nc { color: #005b82 } /* Name.Class */
-html[data-theme="light"] .highlight .no { color: #005b82 } /* Name.Constant */
-html[data-theme="light"] .highlight .nd { color: #7f4707 } /* Name.Decorator */
-html[data-theme="light"] .highlight .ni { color: #00622f } /* Name.Entity */
-html[data-theme="light"] .highlight .ne { color: #6730c5 } /* Name.Exception */
-html[data-theme="light"] .highlight .nf { color: #005b82 } /* Name.Function */
-html[data-theme="light"] .highlight .nl { color: #7f4707 } /* Name.Label */
+html[data-theme="light"] .highlight .nb { color: #7F4707 } /* Name.Builtin */
+html[data-theme="light"] .highlight .nc { color: #005B82 } /* Name.Class */
+html[data-theme="light"] .highlight .no { color: #005B82 } /* Name.Constant */
+html[data-theme="light"] .highlight .nd { color: #7F4707 } /* Name.Decorator */
+html[data-theme="light"] .highlight .ni { color: #00622F } /* Name.Entity */
+html[data-theme="light"] .highlight .ne { color: #6730C5 } /* Name.Exception */
+html[data-theme="light"] .highlight .nf { color: #005B82 } /* Name.Function */
+html[data-theme="light"] .highlight .nl { color: #7F4707 } /* Name.Label */
 html[data-theme="light"] .highlight .nn { color: #080808 } /* Name.Namespace */
 html[data-theme="light"] .highlight .nx { color: #080808 } /* Name.Other */
-html[data-theme="light"] .highlight .py { color: #005b82 } /* Name.Property */
-html[data-theme="light"] .highlight .nt { color: #005b82 } /* Name.Tag */
-html[data-theme="light"] .highlight .nv { color: #a12236 } /* Name.Variable */
-html[data-theme="light"] .highlight .ow { color: #6730c5 } /* Operator.Word */
+html[data-theme="light"] .highlight .py { color: #005B82 } /* Name.Property */
+html[data-theme="light"] .highlight .nt { color: #005B82 } /* Name.Tag */
+html[data-theme="light"] .highlight .nv { color: #A12236 } /* Name.Variable */
+html[data-theme="light"] .highlight .ow { color: #6730C5 } /* Operator.Word */
 html[data-theme="light"] .highlight .pm { color: #080808 } /* Punctuation.Marker */
 html[data-theme="light"] .highlight .w { color: #080808 } /* Text.Whitespace */
-html[data-theme="light"] .highlight .mb { color: #7f4707 } /* Literal.Number.Bin */
-html[data-theme="light"] .highlight .mf { color: #7f4707 } /* Literal.Number.Float */
-html[data-theme="light"] .highlight .mh { color: #7f4707 } /* Literal.Number.Hex */
-html[data-theme="light"] .highlight .mi { color: #7f4707 } /* Literal.Number.Integer */
-html[data-theme="light"] .highlight .mo { color: #7f4707 } /* Literal.Number.Oct */
-html[data-theme="light"] .highlight .sa { color: #00622f } /* Literal.String.Affix */
-html[data-theme="light"] .highlight .sb { color: #00622f } /* Literal.String.Backtick */
-html[data-theme="light"] .highlight .sc { color: #00622f } /* Literal.String.Char */
-html[data-theme="light"] .highlight .dl { color: #00622f } /* Literal.String.Delimiter */
-html[data-theme="light"] .highlight .sd { color: #00622f } /* Literal.String.Doc */
-html[data-theme="light"] .highlight .s2 { color: #00622f } /* Literal.String.Double */
-html[data-theme="light"] .highlight .se { color: #00622f } /* Literal.String.Escape */
-html[data-theme="light"] .highlight .sh { color: #00622f } /* Literal.String.Heredoc */
-html[data-theme="light"] .highlight .si { color: #00622f } /* Literal.String.Interpol */
-html[data-theme="light"] .highlight .sx { color: #00622f } /* Literal.String.Other */
-html[data-theme="light"] .highlight .sr { color: #a12236 } /* Literal.String.Regex */
-html[data-theme="light"] .highlight .s1 { color: #00622f } /* Literal.String.Single */
-html[data-theme="light"] .highlight .ss { color: #005b82 } /* Literal.String.Symbol */
-html[data-theme="light"] .highlight .bp { color: #7f4707 } /* Name.Builtin.Pseudo */
-html[data-theme="light"] .highlight .fm { color: #005b82 } /* Name.Function.Magic */
-html[data-theme="light"] .highlight .vc { color: #a12236 } /* Name.Variable.Class */
-html[data-theme="light"] .highlight .vg { color: #a12236 } /* Name.Variable.Global */
-html[data-theme="light"] .highlight .vi { color: #a12236 } /* Name.Variable.Instance */
-html[data-theme="light"] .highlight .vm { color: #7f4707 } /* Name.Variable.Magic */
-html[data-theme="light"] .highlight .il { color: #7f4707 } /* Literal.Number.Integer.Long */
+html[data-theme="light"] .highlight .mb { color: #7F4707 } /* Literal.Number.Bin */
+html[data-theme="light"] .highlight .mf { color: #7F4707 } /* Literal.Number.Float */
+html[data-theme="light"] .highlight .mh { color: #7F4707 } /* Literal.Number.Hex */
+html[data-theme="light"] .highlight .mi { color: #7F4707 } /* Literal.Number.Integer */
+html[data-theme="light"] .highlight .mo { color: #7F4707 } /* Literal.Number.Oct */
+html[data-theme="light"] .highlight .sa { color: #00622F } /* Literal.String.Affix */
+html[data-theme="light"] .highlight .sb { color: #00622F } /* Literal.String.Backtick */
+html[data-theme="light"] .highlight .sc { color: #00622F } /* Literal.String.Char */
+html[data-theme="light"] .highlight .dl { color: #00622F } /* Literal.String.Delimiter */
+html[data-theme="light"] .highlight .sd { color: #00622F } /* Literal.String.Doc */
+html[data-theme="light"] .highlight .s2 { color: #00622F } /* Literal.String.Double */
+html[data-theme="light"] .highlight .se { color: #00622F } /* Literal.String.Escape */
+html[data-theme="light"] .highlight .sh { color: #00622F } /* Literal.String.Heredoc */
+html[data-theme="light"] .highlight .si { color: #00622F } /* Literal.String.Interpol */
+html[data-theme="light"] .highlight .sx { color: #00622F } /* Literal.String.Other */
+html[data-theme="light"] .highlight .sr { color: #A12236 } /* Literal.String.Regex */
+html[data-theme="light"] .highlight .s1 { color: #00622F } /* Literal.String.Single */
+html[data-theme="light"] .highlight .ss { color: #005B82 } /* Literal.String.Symbol */
+html[data-theme="light"] .highlight .bp { color: #7F4707 } /* Name.Builtin.Pseudo */
+html[data-theme="light"] .highlight .fm { color: #005B82 } /* Name.Function.Magic */
+html[data-theme="light"] .highlight .vc { color: #A12236 } /* Name.Variable.Class */
+html[data-theme="light"] .highlight .vg { color: #A12236 } /* Name.Variable.Global */
+html[data-theme="light"] .highlight .vi { color: #A12236 } /* Name.Variable.Instance */
+html[data-theme="light"] .highlight .vm { color: #7F4707 } /* Name.Variable.Magic */
+html[data-theme="light"] .highlight .il { color: #7F4707 } /* Literal.Number.Integer.Long */
 html[data-theme="dark"] .highlight pre { line-height: 125%; }
 html[data-theme="dark"] .highlight td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
 html[data-theme="dark"] .highlight span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
 html[data-theme="dark"] .highlight td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
 html[data-theme="dark"] .highlight span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
 html[data-theme="dark"] .highlight .hll { background-color: #ffd9002e }
-html[data-theme="dark"] .highlight { background: #2b2b2b; color: #f8f8f2 }
-html[data-theme="dark"] .highlight .c { color: #ffd900 } /* Comment */
-html[data-theme="dark"] .highlight .err { color: #ffa07a } /* Error */
-html[data-theme="dark"] .highlight .k { color: #dcc6e0 } /* Keyword */
-html[data-theme="dark"] .highlight .l { color: #ffd900 } /* Literal */
-html[data-theme="dark"] .highlight .n { color: #f8f8f2 } /* Name */
-html[data-theme="dark"] .highlight .o { color: #abe338 } /* Operator */
-html[data-theme="dark"] .highlight .p { color: #f8f8f2 } /* Punctuation */
-html[data-theme="dark"] .highlight .ch { color: #ffd900 } /* Comment.Hashbang */
-html[data-theme="dark"] .highlight .cm { color: #ffd900 } /* Comment.Multiline */
-html[data-theme="dark"] .highlight .cp { color: #ffd900 } /* Comment.Preproc */
-html[data-theme="dark"] .highlight .cpf { color: #ffd900 } /* Comment.PreprocFile */
-html[data-theme="dark"] .highlight .c1 { color: #ffd900 } /* Comment.Single */
-html[data-theme="dark"] .highlight .cs { color: #ffd900 } /* Comment.Special */
-html[data-theme="dark"] .highlight .gd { color: #00e0e0 } /* Generic.Deleted */
+html[data-theme="dark"] .highlight { background: #2b2b2b; color: #F8F8F2 }
+html[data-theme="dark"] .highlight .c { color: #FFD900 } /* Comment */
+html[data-theme="dark"] .highlight .err { color: #FFA07A } /* Error */
+html[data-theme="dark"] .highlight .k { color: #DCC6E0 } /* Keyword */
+html[data-theme="dark"] .highlight .l { color: #FFD900 } /* Literal */
+html[data-theme="dark"] .highlight .n { color: #F8F8F2 } /* Name */
+html[data-theme="dark"] .highlight .o { color: #ABE338 } /* Operator */
+html[data-theme="dark"] .highlight .p { color: #F8F8F2 } /* Punctuation */
+html[data-theme="dark"] .highlight .ch { color: #FFD900 } /* Comment.Hashbang */
+html[data-theme="dark"] .highlight .cm { color: #FFD900 } /* Comment.Multiline */
+html[data-theme="dark"] .highlight .cp { color: #FFD900 } /* Comment.Preproc */
+html[data-theme="dark"] .highlight .cpf { color: #FFD900 } /* Comment.PreprocFile */
+html[data-theme="dark"] .highlight .c1 { color: #FFD900 } /* Comment.Single */
+html[data-theme="dark"] .highlight .cs { color: #FFD900 } /* Comment.Special */
+html[data-theme="dark"] .highlight .gd { color: #00E0E0 } /* Generic.Deleted */
 html[data-theme="dark"] .highlight .ge { font-style: italic } /* Generic.Emph */
-html[data-theme="dark"] .highlight .gh { color: #00e0e0 } /* Generic.Heading */
+html[data-theme="dark"] .highlight .gh { color: #00E0E0 } /* Generic.Heading */
 html[data-theme="dark"] .highlight .gs { font-weight: bold } /* Generic.Strong */
-html[data-theme="dark"] .highlight .gu { color: #00e0e0 } /* Generic.Subheading */
-html[data-theme="dark"] .highlight .kc { color: #dcc6e0 } /* Keyword.Constant */
-html[data-theme="dark"] .highlight .kd { color: #dcc6e0 } /* Keyword.Declaration */
-html[data-theme="dark"] .highlight .kn { color: #dcc6e0 } /* Keyword.Namespace */
-html[data-theme="dark"] .highlight .kp { color: #dcc6e0 } /* Keyword.Pseudo */
-html[data-theme="dark"] .highlight .kr { color: #dcc6e0 } /* Keyword.Reserved */
-html[data-theme="dark"] .highlight .kt { color: #ffd900 } /* Keyword.Type */
-html[data-theme="dark"] .highlight .ld { color: #ffd900 } /* Literal.Date */
-html[data-theme="dark"] .highlight .m { color: #ffd900 } /* Literal.Number */
-html[data-theme="dark"] .highlight .s { color: #abe338 } /* Literal.String */
-html[data-theme="dark"] .highlight .na { color: #ffd900 } /* Name.Attribute */
-html[data-theme="dark"] .highlight .nb { color: #ffd900 } /* Name.Builtin */
-html[data-theme="dark"] .highlight .nc { color: #00e0e0 } /* Name.Class */
-html[data-theme="dark"] .highlight .no { color: #00e0e0 } /* Name.Constant */
-html[data-theme="dark"] .highlight .nd { color: #ffd900 } /* Name.Decorator */
-html[data-theme="dark"] .highlight .ni { color: #abe338 } /* Name.Entity */
-html[data-theme="dark"] .highlight .ne { color: #dcc6e0 } /* Name.Exception */
-html[data-theme="dark"] .highlight .nf { color: #00e0e0 } /* Name.Function */
-html[data-theme="dark"] .highlight .nl { color: #ffd900 } /* Name.Label */
-html[data-theme="dark"] .highlight .nn { color: #f8f8f2 } /* Name.Namespace */
-html[data-theme="dark"] .highlight .nx { color: #f8f8f2 } /* Name.Other */
-html[data-theme="dark"] .highlight .py { color: #00e0e0 } /* Name.Property */
-html[data-theme="dark"] .highlight .nt { color: #00e0e0 } /* Name.Tag */
-html[data-theme="dark"] .highlight .nv { color: #ffa07a } /* Name.Variable */
-html[data-theme="dark"] .highlight .ow { color: #dcc6e0 } /* Operator.Word */
-html[data-theme="dark"] .highlight .pm { color: #f8f8f2 } /* Punctuation.Marker */
-html[data-theme="dark"] .highlight .w { color: #f8f8f2 } /* Text.Whitespace */
-html[data-theme="dark"] .highlight .mb { color: #ffd900 } /* Literal.Number.Bin */
-html[data-theme="dark"] .highlight .mf { color: #ffd900 } /* Literal.Number.Float */
-html[data-theme="dark"] .highlight .mh { color: #ffd900 } /* Literal.Number.Hex */
-html[data-theme="dark"] .highlight .mi { color: #ffd900 } /* Literal.Number.Integer */
-html[data-theme="dark"] .highlight .mo { color: #ffd900 } /* Literal.Number.Oct */
-html[data-theme="dark"] .highlight .sa { color: #abe338 } /* Literal.String.Affix */
-html[data-theme="dark"] .highlight .sb { color: #abe338 } /* Literal.String.Backtick */
-html[data-theme="dark"] .highlight .sc { color: #abe338 } /* Literal.String.Char */
-html[data-theme="dark"] .highlight .dl { color: #abe338 } /* Literal.String.Delimiter */
-html[data-theme="dark"] .highlight .sd { color: #abe338 } /* Literal.String.Doc */
-html[data-theme="dark"] .highlight .s2 { color: #abe338 } /* Literal.String.Double */
-html[data-theme="dark"] .highlight .se { color: #abe338 } /* Literal.String.Escape */
-html[data-theme="dark"] .highlight .sh { color: #abe338 } /* Literal.String.Heredoc */
-html[data-theme="dark"] .highlight .si { color: #abe338 } /* Literal.String.Interpol */
-html[data-theme="dark"] .highlight .sx { color: #abe338 } /* Literal.String.Other */
-html[data-theme="dark"] .highlight .sr { color: #ffa07a } /* Literal.String.Regex */
-html[data-theme="dark"] .highlight .s1 { color: #abe338 } /* Literal.String.Single */
-html[data-theme="dark"] .highlight .ss { color: #00e0e0 } /* Literal.String.Symbol */
-html[data-theme="dark"] .highlight .bp { color: #ffd900 } /* Name.Builtin.Pseudo */
-html[data-theme="dark"] .highlight .fm { color: #00e0e0 } /* Name.Function.Magic */
-html[data-theme="dark"] .highlight .vc { color: #ffa07a } /* Name.Variable.Class */
-html[data-theme="dark"] .highlight .vg { color: #ffa07a } /* Name.Variable.Global */
-html[data-theme="dark"] .highlight .vi { color: #ffa07a } /* Name.Variable.Instance */
-html[data-theme="dark"] .highlight .vm { color: #ffd900 } /* Name.Variable.Magic */
-html[data-theme="dark"] .highlight .il { color: #ffd900 } /* Literal.Number.Integer.Long */
\ No newline at end of file
+html[data-theme="dark"] .highlight .gu { color: #00E0E0 } /* Generic.Subheading */
+html[data-theme="dark"] .highlight .kc { color: #DCC6E0 } /* Keyword.Constant */
+html[data-theme="dark"] .highlight .kd { color: #DCC6E0 } /* Keyword.Declaration */
+html[data-theme="dark"] .highlight .kn { color: #DCC6E0 } /* Keyword.Namespace */
+html[data-theme="dark"] .highlight .kp { color: #DCC6E0 } /* Keyword.Pseudo */
+html[data-theme="dark"] .highlight .kr { color: #DCC6E0 } /* Keyword.Reserved */
+html[data-theme="dark"] .highlight .kt { color: #FFD900 } /* Keyword.Type */
+html[data-theme="dark"] .highlight .ld { color: #FFD900 } /* Literal.Date */
+html[data-theme="dark"] .highlight .m { color: #FFD900 } /* Literal.Number */
+html[data-theme="dark"] .highlight .s { color: #ABE338 } /* Literal.String */
+html[data-theme="dark"] .highlight .na { color: #FFD900 } /* Name.Attribute */
+html[data-theme="dark"] .highlight .nb { color: #FFD900 } /* Name.Builtin */
+html[data-theme="dark"] .highlight .nc { color: #00E0E0 } /* Name.Class */
+html[data-theme="dark"] .highlight .no { color: #00E0E0 } /* Name.Constant */
+html[data-theme="dark"] .highlight .nd { color: #FFD900 } /* Name.Decorator */
+html[data-theme="dark"] .highlight .ni { color: #ABE338 } /* Name.Entity */
+html[data-theme="dark"] .highlight .ne { color: #DCC6E0 } /* Name.Exception */
+html[data-theme="dark"] .highlight .nf { color: #00E0E0 } /* Name.Function */
+html[data-theme="dark"] .highlight .nl { color: #FFD900 } /* Name.Label */
+html[data-theme="dark"] .highlight .nn { color: #F8F8F2 } /* Name.Namespace */
+html[data-theme="dark"] .highlight .nx { color: #F8F8F2 } /* Name.Other */
+html[data-theme="dark"] .highlight .py { color: #00E0E0 } /* Name.Property */
+html[data-theme="dark"] .highlight .nt { color: #00E0E0 } /* Name.Tag */
+html[data-theme="dark"] .highlight .nv { color: #FFA07A } /* Name.Variable */
+html[data-theme="dark"] .highlight .ow { color: #DCC6E0 } /* Operator.Word */
+html[data-theme="dark"] .highlight .pm { color: #F8F8F2 } /* Punctuation.Marker */
+html[data-theme="dark"] .highlight .w { color: #F8F8F2 } /* Text.Whitespace */
+html[data-theme="dark"] .highlight .mb { color: #FFD900 } /* Literal.Number.Bin */
+html[data-theme="dark"] .highlight .mf { color: #FFD900 } /* Literal.Number.Float */
+html[data-theme="dark"] .highlight .mh { color: #FFD900 } /* Literal.Number.Hex */
+html[data-theme="dark"] .highlight .mi { color: #FFD900 } /* Literal.Number.Integer */
+html[data-theme="dark"] .highlight .mo { color: #FFD900 } /* Literal.Number.Oct */
+html[data-theme="dark"] .highlight .sa { color: #ABE338 } /* Literal.String.Affix */
+html[data-theme="dark"] .highlight .sb { color: #ABE338 } /* Literal.String.Backtick */
+html[data-theme="dark"] .highlight .sc { color: #ABE338 } /* Literal.String.Char */
+html[data-theme="dark"] .highlight .dl { color: #ABE338 } /* Literal.String.Delimiter */
+html[data-theme="dark"] .highlight .sd { color: #ABE338 } /* Literal.String.Doc */
+html[data-theme="dark"] .highlight .s2 { color: #ABE338 } /* Literal.String.Double */
+html[data-theme="dark"] .highlight .se { color: #ABE338 } /* Literal.String.Escape */
+html[data-theme="dark"] .highlight .sh { color: #ABE338 } /* Literal.String.Heredoc */
+html[data-theme="dark"] .highlight .si { color: #ABE338 } /* Literal.String.Interpol */
+html[data-theme="dark"] .highlight .sx { color: #ABE338 } /* Literal.String.Other */
+html[data-theme="dark"] .highlight .sr { color: #FFA07A } /* Literal.String.Regex */
+html[data-theme="dark"] .highlight .s1 { color: #ABE338 } /* Literal.String.Single */
+html[data-theme="dark"] .highlight .ss { color: #00E0E0 } /* Literal.String.Symbol */
+html[data-theme="dark"] .highlight .bp { color: #FFD900 } /* Name.Builtin.Pseudo */
+html[data-theme="dark"] .highlight .fm { color: #00E0E0 } /* Name.Function.Magic */
+html[data-theme="dark"] .highlight .vc { color: #FFA07A } /* Name.Variable.Class */
+html[data-theme="dark"] .highlight .vg { color: #FFA07A } /* Name.Variable.Global */
+html[data-theme="dark"] .highlight .vi { color: #FFA07A } /* Name.Variable.Instance */
+html[data-theme="dark"] .highlight .vm { color: #FFD900 } /* Name.Variable.Magic */
+html[data-theme="dark"] .highlight .il { color: #FFD900 } /* Literal.Number.Integer.Long */
\ No newline at end of file
diff --git a/content/api/inverse_optimal_tax.html b/content/api/inverse_optimal_tax.html
index 358026d..0ff8625 100644
--- a/content/api/inverse_optimal_tax.html
+++ b/content/api/inverse_optimal_tax.html
@@ -30,7 +30,7 @@
   
 
 
-    
+    
     
     
     
diff --git a/content/api/public_api.html b/content/api/public_api.html
index 2e81dbc..e7e39c8 100644
--- a/content/api/public_api.html
+++ b/content/api/public_api.html
@@ -30,7 +30,7 @@
   
 
 
-    
+    
     
     
     
diff --git a/content/example/IOT_example.html b/content/example/IOT_example.html
index 874154d..a35374e 100644
--- a/content/example/IOT_example.html
+++ b/content/example/IOT_example.html
@@ -30,7 +30,7 @@
   
 
 
-    
+    
     
     
     
@@ -435,15 +435,15 @@ 

Step 1: Import the
# imports
-from iot.iot_user import iot_comparison
-from IPython.core.display import display, HTML
-from plotly.offline import init_notebook_mode, plot
+from iot.iot_user import iot_comparison
+from IPython.core.display import display, HTML
+from plotly.offline import init_notebook_mode, plot
 init_notebook_mode(connected=True)
 
-
/tmp/ipykernel_2023/995651565.py:3: DeprecationWarning: Importing display from IPython.core.display is deprecated since IPython 7.14, please import from IPython.display
+
/tmp/ipykernel_1959/995651565.py:3: DeprecationWarning: Importing display from IPython.core.display is deprecated since IPython 7.14, please import from IPython.display
   from IPython.core.display import display, HTML
 
diff --git a/content/intro/contributing.html b/content/intro/contributing.html index 44051dd..074aa01 100644 --- a/content/intro/contributing.html +++ b/content/intro/contributing.html @@ -30,7 +30,7 @@ - + diff --git a/content/intro/intro.html b/content/intro/intro.html index 95d9987..90dc83c 100644 --- a/content/intro/intro.html +++ b/content/intro/intro.html @@ -30,7 +30,7 @@ - + diff --git a/content/intro/parameters.html b/content/intro/parameters.html index 00450e8..6d337c5 100644 --- a/content/intro/parameters.html +++ b/content/intro/parameters.html @@ -30,7 +30,7 @@ - + diff --git a/content/references.html b/content/references.html index 4b963ef..404f05d 100644 --- a/content/references.html +++ b/content/references.html @@ -30,7 +30,7 @@ - + diff --git a/genindex.html b/genindex.html index 07c13d4..3ef443e 100644 --- a/genindex.html +++ b/genindex.html @@ -29,7 +29,7 @@ - + diff --git a/search.html b/search.html index ab40871..218479f 100644 --- a/search.html +++ b/search.html @@ -28,7 +28,7 @@ - + diff --git a/searchindex.js b/searchindex.js index 10b471a..4e557a6 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"API": [[1, null]], "Accessing the results of the model": [[2, "accessing-the-results-of-the-model"]], "Citing InverseOptimalTax": [[4, "citing-inverseoptimaltax"]], "Code formatting": [[3, "code-formatting"]], "Coding Practices": [[3, "coding-practices"]], "Contributor Guide": [[3, null]], "Core Maintainers": [[4, "core-maintainers"]], "Disclaimer": [[4, "disclaimer"]], "Footnotes": [[3, "footnotes"]], "Inverse Optimal Tax Class Object": [[0, null]], "Inverse Optimal Tax Example": [[2, null]], "InverseOptimalTax": [[4, null]], "Parameters": [[5, null]], "Plotting inputs to the calculation": [[2, "plotting-inputs-to-the-calculation"]], "Python Docstrings": [[3, "python-docstrings"]], "References": [[6, null]], "Setup Git": [[3, "setup-git"]], "Setup Python": [[3, "setup-python"]], "Step 1: Import the iot_comparison class object": [[2, "step-1-import-the-iot-comparison-class-object"]], "Step 2: Instantiate an iot_comparison class object": [[2, "step-2-instantiate-an-iot-comparison-class-object"]], "Submitting a GitHub Issue": [[3, "submitting-a-github-issue"]], "Submitting a GitHub Pull Request": [[3, "submitting-a-github-pull-request"]], "Visualizing results": [[2, "visualizing-results"]], "Workflow": [[3, "workflow"]], "iot.inverse_optimal_tax": [[0, "iot-inverse-optimal-tax"]]}, "docnames": ["content/api/inverse_optimal_tax", "content/api/public_api", "content/example/IOT_example", "content/intro/contributing", "content/intro/intro", "content/intro/parameters", "content/references"], "envversion": {"sphinx": 62, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.viewcode": 1, "sphinxcontrib.bibtex": 9}, "filenames": ["content/api/inverse_optimal_tax.rst", "content/api/public_api.rst", "content/example/IOT_example.ipynb", "content/intro/contributing.md", "content/intro/intro.md", "content/intro/parameters.md", "content/references.md"], "indexentries": {"compute_income_dist() (iot.inverse_optimal_tax.iot method)": [[0, "iot.inverse_optimal_tax.IOT.compute_income_dist", false]], "compute_mtr_dist() (iot.inverse_optimal_tax.iot method)": [[0, "iot.inverse_optimal_tax.IOT.compute_mtr_dist", false]], "df() (iot.inverse_optimal_tax.iot method)": [[0, "iot.inverse_optimal_tax.IOT.df", false]], "iot (class in iot.inverse_optimal_tax)": [[0, "iot.inverse_optimal_tax.IOT", false]], "sw_weights() (iot.inverse_optimal_tax.iot method)": [[0, "iot.inverse_optimal_tax.IOT.sw_weights", false]]}, "objects": {"iot.inverse_optimal_tax": [[0, 0, 1, "", "IOT"]], "iot.inverse_optimal_tax.IOT": [[0, 1, 1, "", "compute_income_dist"], [0, 1, 1, "", "compute_mtr_dist"], [0, 1, 1, "", "df"], [0, 1, 1, "", "sw_weights"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"]}, "objtypes": {"0": "py:class", "1": "py:method"}, "terms": {"": [2, 3, 6], "0": [0, 2, 4], "000": 2, "00000": 2, "000000": 2, "000017": 2, "00009": 2, "00018": 2, "00027": 2, "00036": 2, "00521702": 2, "005446": 2, "00560577": 2, "0057706": 2, "00591634": 2, "00607098": 2, "00622675": 2, "00637578": 2, "00651968": 2, "00667111": 2, "007470": 2, "019751": 2, "044039e": 2, "07": 2, "08": [2, 6], "09": 2, "097206e": 2, "1": [0, 3, 5], "10": [2, 5, 6], "100": 6, "100000": 2, "1000000": 2, "1016": 6, "103262": 2, "11": 2, "111576": 2, "111583": 2, "111589": 2, "111596": 2, "111603": 2, "111951e": 2, "111986e": 2, "112020e": 2, "112055e": 2, "112090e": 2, "116": 2, "117": 2, "118": 2, "119": 2, "12": 2, "120": 2, "121": 2, "124440e": 2, "14": 2, "156": 6, "16": 2, "17": 2, "2": [0, 3, 5], "200": 2, "2014": [5, 6], "2015": 6, "2016": [0, 5, 6], "2017": [0, 2, 5, 6], "2017_law": 2, "2020": 2, "2021": 2, "2023": 2, "20351": 6, "207234": 2, "207251": 2, "207268": 2, "207286": 2, "207303": 2, "21": 2, "24": 3, "247817": 2, "25": [0, 3], "262466e": 2, "298756": 2, "3": [0, 2, 3], "30": 6, "31": 2, "310736": 2, "327460": 2, "332161": 2, "333851": 2, "333853": 2, "333855": 2, "333857": 2, "333859": 2, "333861": 2, "333863": 2, "348657e": 2, "350": 2, "355290": 2, "4": [2, 3], "40": 3, "41": 2, "41516370e": 2, "434858": 2, "44522129e": 2, "458758": 2, "459950e": 2, "460085e": 2, "460220e": 2, "460355e": 2, "460490e": 2, "47": 6, "47315763e": 2, "49798597e": 2, "5": 2, "52092321e": 2, "54137135e": 2, "557889": 2, "55844796e": 2, "565262": 2, "57331720e": 2, "576106": 2, "58598982e": 2, "587": 2, "588": 2, "589": 2, "590": 2, "591": 2, "592": 2, "593": 2, "594": 2, "59720145e": 2, "6": 2, "7": [2, 3], "703724e": 2, "74": 2, "75": 2, "750053": 2, "75009": 2, "76": 2, "77": [2, 6], "777772e": 2, "78": 2, "79": [2, 3], "8": [2, 3], "80": 2, "81": [2, 6], "82": 2, "825540e": 2, "83": 2, "84": 2, "85": 2, "86": [2, 5], "87": 2, "88": 2, "892010e": 2, "9": [2, 3], "927957e": 2, "971017": 2, "995651565": 2, "99964": 2, "99973": 2, "99982": 2, "99991": 2, "99995": 2, "999959": 2, "99996": 2, "999969": 2, "99997": 2, "999979": 2, "99998": 2, "999989": 2, "99999": 2, "As": 3, "But": 2, "For": 2, "If": [3, 4], "In": 2, "It": 2, "No": 3, "One": 2, "Or": 3, "That": 3, "The": [1, 2, 3, 4, 5], "There": 1, "To": [3, 5], "With": 2, "__init__": 2, "_updat": 2, "about": [1, 2, 3, 4], "abov": [2, 3], "account": 3, "accuraci": 3, "across": [0, 2], "act": 2, "activ": 3, "ad": 3, "add": 3, "addit": 3, "adjust": 2, "administr": 3, "advance_to_year": 2, "after": [2, 3], "afterward": 3, "al": 5, "alarm": 3, "all": [0, 2, 3], "allow": [2, 3, 4], "along": 3, "alphabet": 1, "alreadi": 3, "also": [1, 2, 3], "alwai": 3, "amongst": 2, "an": 3, "anaconda": 3, "analysi": 4, "angl": 3, "ani": 3, "anoth": 3, "anyth": 3, "api": 4, "append": 2, "approach": 5, "ar": [2, 3, 4, 5], "aris": 3, "around": 1, "arrai": 2, "array_lik": 0, "ask": 3, "associ": 3, "assum": 2, "assumpt": 2, "attribut": [0, 2], "automat": 3, "averag": [0, 5], "b": [3, 6], "ba": 6, "background": 3, "bandwidth": [0, 2], "base": 5, "baselin": 2, "baseline_polici": 2, "becaus": [2, 3], "befor": [2, 3], "begin": 2, "behavior": [0, 2], "below": [1, 2, 3, 5], "benjamin": 6, "beyond": 2, "biden": 2, "biden2020": 2, "bin": 0, "black": 3, "bracket": 3, "branch": 3, "bug": 3, "built": 2, "bureau": 6, "c": [0, 3, 5, 6], "calc1": 2, "calcul": 5, "call": [1, 2, 3], "came": 3, "campaign": 2, "can": [0, 2, 3], "case": 3, "cd": 3, "cell": 2, "central": 3, "chang": [0, 3, 4], "charact": 3, "check": 3, "checkout": 3, "choos": 2, "class": 1, "cleali": 2, "click": 3, "clone": 3, "close": 3, "code": [1, 4], "collabor": 3, "column": [0, 2], "com": [2, 3], "command": 3, "commit": 3, "compar": 2, "compare_default": 2, "comparison": 2, "compens": [0, 5], "complet": 3, "comput": [0, 3, 5], "compute_income_dist": 0, "compute_mtr_dist": 0, "conant": 2, "conda": 3, "conflict": 3, "confus": 3, "connect": 2, "consid": 0, "consist": 2, "constant": 5, "constructor": 0, "contact": 3, "contain": 3, "content": 3, "continu": 4, "contrast": 2, "contribut": [3, 4], "control": 3, "convers": 2, "copi": 3, "core": [2, 3], "corner": 3, "cost": 6, "coverag": 3, "creat": [2, 3], "current": [2, 3], "d": 3, "data": [0, 2], "datafram": [0, 2], "deback": 4, "declin": 3, "default": 3, "degrad": 3, "densiti": 0, "depend": 3, "deprec": 2, "deprecationwarn": 2, "deriv": [0, 2, 5], "describ": 3, "descript": [3, 5], "detail": 0, "determin": [2, 5], "dev": [2, 3], "develop": 4, "deviat": 3, "df": [0, 2], "differ": [2, 3], "differnt": 2, "directori": [1, 3], "displai": 2, "dist_typ": [0, 2], "distribut": [0, 2, 3, 5], "diverg": 2, "do": [2, 3, 4, 5], "document": [1, 3], "doe": 2, "doesn": 3, "doi": 6, "dollar": [2, 3], "don": 3, "download": 3, "dutch": 6, "e": 2, "e00200": 0, "each": [0, 1, 2, 3, 5], "earn": 5, "easi": 2, "easier": 3, "easiest": 2, "econom": [5, 6], "edit": 3, "editor": 3, "eee": 6, "effect": 5, "effici": 6, "egbert": 6, "elast": [0, 5], "element": 3, "els": 2, "empir": 2, "employ": 5, "enact": 2, "end": 3, "endswith": 2, "enforc": 3, "engin": 2, "ensur": 3, "enter": 3, "enumer": 2, "env": [2, 3], "environ": 3, "equat": 5, "equiv": 5, "error": [2, 3], "estim": [2, 5], "et": 5, "eti": [0, 2], "evalu": 2, "even": 3, "exampl": 3, "excel": 3, "execut": [2, 3], "exist": 2, "extens": 3, "f": [0, 2, 5], "f_figur": 2, "f_prime": [0, 2], "facili": 2, "fals": 2, "far": 3, "feel": 3, "fetch": 3, "fig": 2, "fig2": 2, "fig3": 2, "file": [2, 3], "filenam": [2, 3], "final": 3, "find": 3, "first": [2, 3], "fix": 3, "flori": 6, "follow": [0, 2, 3], "fork": 3, "format": [0, 2], "four": 3, "fprime_figur": 2, "frac": [0, 5], "free": 3, "frequent": 3, "from": [0, 2, 3, 5], "full": 3, "function": [0, 1, 2, 5], "g_": 0, "g_z": [2, 5], "g_z_numer": 2, "gave": 2, "gen_microdata": 2, "gener": [2, 3], "generate_data": 2, "get": 3, "github": 4, "githubusercont": 2, "given": 0, "good": 3, "googl": 3, "gradual": 2, "growth": 6, "guidanc": 3, "gz_figur": 2, "ha": 2, "handl": 4, "happen": 3, "hardwar": 3, "have": [2, 3, 4], "help": [2, 3], "hen14": 6, "hendren": [5, 6], "here": [1, 3], "high": [1, 2], "higher": 2, "highest": 2, "host": 3, "hour": 3, "how": [1, 2, 3], "html": [2, 6], "http": [2, 3, 6], "i": [1, 2, 3, 4, 5], "id_charity_crt_al": 2, "idea": [3, 6], "illustr": 2, "implement": 2, "implement_reform": 2, "impli": 2, "implicit": 6, "implicitli": 2, "improv": 3, "inc": 6, "includ": [0, 3], "incom": [0, 2, 5], "income_measur": [0, 2], "increas": [2, 3], "inde": 2, "index": 2, "infer": 2, "inform": 3, "init_notebook_mod": 2, "input": 0, "insid": 3, "instal": 3, "instanc": [0, 2], "interfac": [2, 3], "interfer": 3, "interpret": 2, "introduc": 3, "invers": [1, 4, 6], "inverseoptimaltax": [1, 2, 3], "iot": [1, 2, 3, 4], "iot1": 2, "iot_us": 2, "ipykernel_2023": 2, "ipython": 2, "isn": 3, "issu": 4, "item": 2, "its": [0, 2, 3], "j": 6, "jacob": [0, 5, 6], "jason": 4, "jdeback": 4, "jjz": 5, "jjz17": 6, "jmoneco": 6, "john": 4, "jongen": [0, 6], "journal": 6, "jpubeco": 6, "json": 2, "judgment": 6, "juli": 6, "just": 5, "kde_bw": [0, 2], "keep": [3, 5], "kreg": 0, "l": [3, 6], "label": 2, "languag": 3, "larg": 3, "larger": 3, "last": 2, "latest": 3, "law": 2, "layer": 2, "left": 3, "let": 2, "level": [1, 2], "lib": 2, "librari": 3, "like": [2, 3], "limit": 3, "line": [2, 3], "link": 1, "list": [1, 2], "literatur": 5, "live": 3, "local": [3, 5], "locat": 1, "lockwood": [0, 5, 6], "log_norm": 0, "look": 2, "lot": 5, "lower": 2, "lower_bound": [0, 2], "lowest": 2, "lw16": 6, "m": 3, "mac": 3, "machin": 3, "made": 3, "mai": [2, 3, 4, 5], "main": 2, "maintain": 3, "make": [1, 2, 3], "mani": 3, "margin": [0, 2, 5], "master": 3, "matter": 3, "matthew": 6, "maxim": 2, "maximum": 0, "mayb": 5, "mb": 3, "mean": [0, 3], "measur": [0, 6], "member": [1, 3], "merg": 3, "messag": 3, "method": [0, 1, 2], "micro": 0, "miniconda": 2, "minimum": 0, "minut": 3, "miss": 3, "model": [3, 4, 5], "modul": [1, 4], "moneco": 6, "monetari": 6, "more": [2, 3, 5], "most": [2, 3], "msg": 2, "mtr": [0, 2, 5], "mtr_figur": 2, "mtr_prime": [0, 2], "mtr_prime_figur": 2, "mtr_smooth_param": [0, 2], "mtr_smoother": [0, 2], "mtr_wrt": 2, "much": 2, "multipl": 2, "must": 0, "name": [0, 3], "nathaniel": 6, "nation": 6, "navig": 3, "nber": 6, "nberwo": 6, "nbr": 6, "necessari": [3, 5], "need": [2, 3, 5], "never": 3, "new": [3, 5], "newli": 3, "next": 3, "non": 0, "none": [0, 2], "norm": 6, "note": [2, 3, 5], "notebook": 2, "now": [2, 3], "number": [2, 3], "object": 1, "off": 2, "offlin": 2, "often": [2, 3], "one": [2, 3, 4], "onli": 3, "open": 3, "oper": 3, "optim": [1, 4], "optimum": 6, "order": [1, 2], "org": 6, "organ": [1, 3], "origin": 3, "other": 3, "otherwis": 5, "our": 0, "out": [2, 5], "output": [0, 2], "over": 0, "own": 3, "p": [4, 6], "packag": [1, 2, 3], "page": 3, "panda": [0, 2], "paper": 6, "paragraph": 3, "param": 2, "paramet": [0, 2], "parameter": 2, "parametr": [0, 2], "paramtool": 2, "part": 3, "parti": 6, "particular": 2, "pass": 3, "password": 3, "payer": [0, 2], "pdf": 5, "percent": 3, "period": 3, "pg": 5, "place": 2, "platform": 3, "pleas": [2, 3, 4], "plotli": 2, "point": [2, 5], "pol1": 2, "polci": 2, "polici": [0, 2, 6], "polit": 6, "posit": 6, "possibl": 3, "pre": 5, "preced": 3, "prefer": 6, "presid": 2, "previou": 3, "print_warn": 2, "prior": 3, "privileg": 3, "probabl": 0, "proce": 3, "process": 3, "program": 3, "progress": 2, "project": 3, "prompt": 3, "propos": 2, "provid": [1, 2, 3], "psl_exampl": 2, "pslmodel": [2, 3, 4], "pt": 2, "pubeco": 6, "public": 6, "pull": 4, "purpos": 3, "push": 3, "py": [0, 2, 3], "pytest": 3, "python": 4, "python3": 2, "question": [3, 4], "quickli": 4, "r": [0, 5], "rais": 2, "raise_error": 2, "rate": [0, 2, 5], "raw": [0, 2], "re": 3, "read_json_reform": 2, "readi": 3, "rec": 2, "recent": [2, 3], "recess": 6, "record": [2, 3], "refer": 2, "reform": 2, "regress": 2, "rel": 2, "remain": 2, "rememb": 3, "remot": 3, "repec": 6, "repo": 3, "report": 3, "repositori": [3, 4], "repres": 0, "request": 4, "research": 6, "resolv": 3, "result": 4, "return": [0, 2], "reveal": [2, 6], "revers": 2, "revert": 3, "review": 3, "revis": 2, "right": 3, "roughli": 2, "row": 2, "rule": 3, "run": [2, 3], "ryan": 4, "s006": 0, "same": 3, "scalar": 0, "schedul": 2, "schema": 2, "second": 3, "section": 3, "see": [0, 2, 3, 5], "select": 3, "self": 2, "separ": 3, "set": 2, "share": [2, 3], "short": 3, "should": [2, 3], "show": [2, 3], "sign": 3, "sinc": 2, "site": 2, "situat": 3, "size": 0, "skip": 3, "slice": 2, "slope": [0, 2], "smooth": [0, 5], "so": 3, "social": [0, 2, 5, 6], "softwar": 3, "some": [2, 3, 5], "somewhat": 2, "sourc": [0, 1, 3, 4, 5], "speak": 2, "specif": [2, 3], "specifi": [2, 3], "standard": 3, "start": 5, "statement": 3, "statist": 5, "statu": 3, "step": 3, "str": 0, "structur": 5, "style": [2, 3], "submit": 4, "subset": 3, "successfulli": 3, "suffici": 5, "suggest": 2, "suit": 3, "summar": 5, "sure": 3, "surprisingli": 2, "sw_weight": 0, "switch": 3, "syle": 2, "symbol": 3, "sync": 3, "system": 3, "t": [0, 3, 5, 6], "tag": 3, "take": [3, 5], "tax": [1, 4, 5, 6], "taxabl": [0, 5], "taxcalc": 2, "taxdata": 5, "taxpay": [2, 5], "tc": 2, "tcja": 2, "team": 3, "tell": [2, 3], "termin": 3, "test": 3, "text": 3, "thaat": 2, "than": [2, 3], "thei": 2, "them": [2, 3], "therefor": 2, "theta_": 5, "theta_figur": 2, "theta_z": [0, 2, 5], "thi": [0, 1, 2, 3], "think": 3, "those": [2, 3], "three": 2, "through": [2, 3], "tip": 3, "tmp": 2, "togeth": 2, "top": 2, "traceback": 2, "track": 3, "tree": 1, "true": 2, "try": [2, 3], "tupl": 0, "two": 2, "type": [0, 3], "typic": 3, "u": [2, 6], "under": 4, "underli": 2, "understand": 2, "underyl": 2, "unequ": 6, "unit": 0, "untest": 3, "up": [1, 3], "updat": 3, "upper": 3, "upper_bound": [0, 2], "upstream": 3, "url": 6, "us": [0, 2, 3, 6], "user": [2, 3], "usernam": 3, "usr": 2, "usual": 3, "v": 2, "v156y2017icp81": 6, "v77y2016icp30": 6, "val": 2, "validationerror": 2, "var": 2, "varepsilon": [0, 5], "ve": 3, "vector": 0, "veri": 2, "version": [3, 4], "via": 3, "view": 1, "w": [0, 5, 6], "wa": 2, "wai": 3, "want": 3, "we": [1, 2, 3, 5], "web": 3, "weight": [0, 2, 5, 6], "weight_var": [0, 2], "weinzierl": [0, 5, 6], "welfar": [0, 2, 5], "well": 2, "were": 2, "what": 2, "when": 3, "where": 3, "which": 3, "why": 2, "window": 3, "without": 3, "work": [2, 3, 6], "would": [2, 3], "write": 5, "written": 3, "year": 2, "yearval": 2, "you": [3, 4], "your": 3, "z": [0, 2, 5], "zf": 5, "zoutman": [0, 6], "zt": [0, 5]}, "titles": ["Inverse Optimal Tax Class Object", "API", "Inverse Optimal Tax Example", "Contributor Guide", "InverseOptimalTax", "Parameters", "References"], "titleterms": {"1": 2, "2": 2, "access": 2, "an": 2, "api": 1, "calcul": 2, "cite": 4, "class": [0, 2], "code": 3, "contributor": 3, "core": 4, "disclaim": 4, "docstr": 3, "exampl": 2, "footnot": 3, "format": 3, "git": 3, "github": 3, "guid": 3, "import": 2, "input": 2, "instanti": 2, "invers": [0, 2], "inverse_optimal_tax": 0, "inverseoptimaltax": 4, "iot": 0, "iot_comparison": 2, "issu": 3, "maintain": 4, "model": 2, "object": [0, 2], "optim": [0, 2], "paramet": 5, "plot": 2, "practic": 3, "pull": 3, "python": 3, "refer": 6, "request": 3, "result": 2, "setup": 3, "step": 2, "submit": 3, "tax": [0, 2], "visual": 2, "workflow": 3}}) \ No newline at end of file +Search.setIndex({"alltitles": {"API": [[1, null]], "Accessing the results of the model": [[2, "accessing-the-results-of-the-model"]], "Citing InverseOptimalTax": [[4, "citing-inverseoptimaltax"]], "Code formatting": [[3, "code-formatting"]], "Coding Practices": [[3, "coding-practices"]], "Contributor Guide": [[3, null]], "Core Maintainers": [[4, "core-maintainers"]], "Disclaimer": [[4, "disclaimer"]], "Footnotes": [[3, "footnotes"]], "Inverse Optimal Tax Class Object": [[0, null]], "Inverse Optimal Tax Example": [[2, null]], "InverseOptimalTax": [[4, null]], "Parameters": [[5, null]], "Plotting inputs to the calculation": [[2, "plotting-inputs-to-the-calculation"]], "Python Docstrings": [[3, "python-docstrings"]], "References": [[6, null]], "Setup Git": [[3, "setup-git"]], "Setup Python": [[3, "setup-python"]], "Step 1: Import the iot_comparison class object": [[2, "step-1-import-the-iot-comparison-class-object"]], "Step 2: Instantiate an iot_comparison class object": [[2, "step-2-instantiate-an-iot-comparison-class-object"]], "Submitting a GitHub Issue": [[3, "submitting-a-github-issue"]], "Submitting a GitHub Pull Request": [[3, "submitting-a-github-pull-request"]], "Visualizing results": [[2, "visualizing-results"]], "Workflow": [[3, "workflow"]], "iot.inverse_optimal_tax": [[0, "iot-inverse-optimal-tax"]]}, "docnames": ["content/api/inverse_optimal_tax", "content/api/public_api", "content/example/IOT_example", "content/intro/contributing", "content/intro/intro", "content/intro/parameters", "content/references"], "envversion": {"sphinx": 62, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.viewcode": 1, "sphinxcontrib.bibtex": 9}, "filenames": ["content/api/inverse_optimal_tax.rst", "content/api/public_api.rst", "content/example/IOT_example.ipynb", "content/intro/contributing.md", "content/intro/intro.md", "content/intro/parameters.md", "content/references.md"], "indexentries": {"compute_income_dist() (iot.inverse_optimal_tax.iot method)": [[0, "iot.inverse_optimal_tax.IOT.compute_income_dist", false]], "compute_mtr_dist() (iot.inverse_optimal_tax.iot method)": [[0, "iot.inverse_optimal_tax.IOT.compute_mtr_dist", false]], "df() (iot.inverse_optimal_tax.iot method)": [[0, "iot.inverse_optimal_tax.IOT.df", false]], "iot (class in iot.inverse_optimal_tax)": [[0, "iot.inverse_optimal_tax.IOT", false]], "sw_weights() (iot.inverse_optimal_tax.iot method)": [[0, "iot.inverse_optimal_tax.IOT.sw_weights", false]]}, "objects": {"iot.inverse_optimal_tax": [[0, 0, 1, "", "IOT"]], "iot.inverse_optimal_tax.IOT": [[0, 1, 1, "", "compute_income_dist"], [0, 1, 1, "", "compute_mtr_dist"], [0, 1, 1, "", "df"], [0, 1, 1, "", "sw_weights"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"]}, "objtypes": {"0": "py:class", "1": "py:method"}, "terms": {"": [2, 3, 6], "0": [0, 2, 4], "000": 2, "00000": 2, "000000": 2, "000017": 2, "00009": 2, "00018": 2, "00027": 2, "00036": 2, "00521702": 2, "005446": 2, "00560577": 2, "0057706": 2, "00591634": 2, "00607098": 2, "00622675": 2, "00637578": 2, "00651968": 2, "00667111": 2, "007470": 2, "019751": 2, "044039e": 2, "07": 2, "08": [2, 6], "09": 2, "097206e": 2, "1": [0, 3, 5], "10": [2, 5, 6], "100": 6, "100000": 2, "1000000": 2, "1016": 6, "103262": 2, "11": 2, "111576": 2, "111583": 2, "111589": 2, "111596": 2, "111603": 2, "111951e": 2, "111986e": 2, "112020e": 2, "112055e": 2, "112090e": 2, "116": 2, "117": 2, "118": 2, "119": 2, "12": 2, "120": 2, "121": 2, "124440e": 2, "14": 2, "156": 6, "16": 2, "17": 2, "2": [0, 3, 5], "200": 2, "2014": [5, 6], "2015": 6, "2016": [0, 5, 6], "2017": [0, 2, 5, 6], "2017_law": 2, "2020": 2, "2021": 2, "2023": 2, "20351": 6, "207234": 2, "207251": 2, "207268": 2, "207286": 2, "207303": 2, "21": 2, "24": 3, "247817": 2, "25": [0, 3], "262466e": 2, "298756": 2, "3": [0, 2, 3], "30": 6, "31": 2, "310736": 2, "327460": 2, "332161": 2, "333851": 2, "333853": 2, "333855": 2, "333857": 2, "333859": 2, "333861": 2, "333863": 2, "348657e": 2, "350": 2, "355290": 2, "4": [2, 3], "40": 3, "41": 2, "41516370e": 2, "434858": 2, "44522129e": 2, "458758": 2, "459950e": 2, "460085e": 2, "460220e": 2, "460355e": 2, "460490e": 2, "47": 6, "47315763e": 2, "49798597e": 2, "5": 2, "52092321e": 2, "54137135e": 2, "557889": 2, "55844796e": 2, "565262": 2, "57331720e": 2, "576106": 2, "58598982e": 2, "587": 2, "588": 2, "589": 2, "590": 2, "591": 2, "592": 2, "593": 2, "594": 2, "59720145e": 2, "6": 2, "7": [2, 3], "703724e": 2, "74": 2, "75": 2, "750053": 2, "75009": 2, "76": 2, "77": [2, 6], "777772e": 2, "78": 2, "79": [2, 3], "8": [2, 3], "80": 2, "81": [2, 6], "82": 2, "825540e": 2, "83": 2, "84": 2, "85": 2, "86": [2, 5], "87": 2, "88": 2, "892010e": 2, "9": [2, 3], "927957e": 2, "971017": 2, "995651565": 2, "99964": 2, "99973": 2, "99982": 2, "99991": 2, "99995": 2, "999959": 2, "99996": 2, "999969": 2, "99997": 2, "999979": 2, "99998": 2, "999989": 2, "99999": 2, "As": 3, "But": 2, "For": 2, "If": [3, 4], "In": 2, "It": 2, "No": 3, "One": 2, "Or": 3, "That": 3, "The": [1, 2, 3, 4, 5], "There": 1, "To": [3, 5], "With": 2, "__init__": 2, "_updat": 2, "about": [1, 2, 3, 4], "abov": [2, 3], "account": 3, "accuraci": 3, "across": [0, 2], "act": 2, "activ": 3, "ad": 3, "add": 3, "addit": 3, "adjust": 2, "administr": 3, "advance_to_year": 2, "after": [2, 3], "afterward": 3, "al": 5, "alarm": 3, "all": [0, 2, 3], "allow": [2, 3, 4], "along": 3, "alphabet": 1, "alreadi": 3, "also": [1, 2, 3], "alwai": 3, "amongst": 2, "an": 3, "anaconda": 3, "analysi": 4, "angl": 3, "ani": 3, "anoth": 3, "anyth": 3, "api": 4, "append": 2, "approach": 5, "ar": [2, 3, 4, 5], "aris": 3, "around": 1, "arrai": 2, "array_lik": 0, "ask": 3, "associ": 3, "assum": 2, "assumpt": 2, "attribut": [0, 2], "automat": 3, "averag": [0, 5], "b": [3, 6], "ba": 6, "background": 3, "bandwidth": [0, 2], "base": 5, "baselin": 2, "baseline_polici": 2, "becaus": [2, 3], "befor": [2, 3], "begin": 2, "behavior": [0, 2], "below": [1, 2, 3, 5], "benjamin": 6, "beyond": 2, "biden": 2, "biden2020": 2, "bin": 0, "black": 3, "bracket": 3, "branch": 3, "bug": 3, "built": 2, "bureau": 6, "c": [0, 3, 5, 6], "calc1": 2, "calcul": 5, "call": [1, 2, 3], "came": 3, "campaign": 2, "can": [0, 2, 3], "case": 3, "cd": 3, "cell": 2, "central": 3, "chang": [0, 3, 4], "charact": 3, "check": 3, "checkout": 3, "choos": 2, "class": 1, "cleali": 2, "click": 3, "clone": 3, "close": 3, "code": [1, 4], "collabor": 3, "column": [0, 2], "com": [2, 3], "command": 3, "commit": 3, "compar": 2, "compare_default": 2, "comparison": 2, "compens": [0, 5], "complet": 3, "comput": [0, 3, 5], "compute_income_dist": 0, "compute_mtr_dist": 0, "conant": 2, "conda": 3, "conflict": 3, "confus": 3, "connect": 2, "consid": 0, "consist": 2, "constant": 5, "constructor": 0, "contact": 3, "contain": 3, "content": 3, "continu": 4, "contrast": 2, "contribut": [3, 4], "control": 3, "convers": 2, "copi": 3, "core": [2, 3], "corner": 3, "cost": 6, "coverag": 3, "creat": [2, 3], "current": [2, 3], "d": 3, "data": [0, 2], "datafram": [0, 2], "deback": 4, "declin": 3, "default": 3, "degrad": 3, "densiti": 0, "depend": 3, "deprec": 2, "deprecationwarn": 2, "deriv": [0, 2, 5], "describ": 3, "descript": [3, 5], "detail": 0, "determin": [2, 5], "dev": [2, 3], "develop": 4, "deviat": 3, "df": [0, 2], "differ": [2, 3], "differnt": 2, "directori": [1, 3], "displai": 2, "dist_typ": [0, 2], "distribut": [0, 2, 3, 5], "diverg": 2, "do": [2, 3, 4, 5], "document": [1, 3], "doe": 2, "doesn": 3, "doi": 6, "dollar": [2, 3], "don": 3, "download": 3, "dutch": 6, "e": 2, "e00200": 0, "each": [0, 1, 2, 3, 5], "earn": 5, "easi": 2, "easier": 3, "easiest": 2, "econom": [5, 6], "edit": 3, "editor": 3, "eee": 6, "effect": 5, "effici": 6, "egbert": 6, "elast": [0, 5], "element": 3, "els": 2, "empir": 2, "employ": 5, "enact": 2, "end": 3, "endswith": 2, "enforc": 3, "engin": 2, "ensur": 3, "enter": 3, "enumer": 2, "env": [2, 3], "environ": 3, "equat": 5, "equiv": 5, "error": [2, 3], "estim": [2, 5], "et": 5, "eti": [0, 2], "evalu": 2, "even": 3, "exampl": 3, "excel": 3, "execut": [2, 3], "exist": 2, "extens": 3, "f": [0, 2, 5], "f_figur": 2, "f_prime": [0, 2], "facili": 2, "fals": 2, "far": 3, "feel": 3, "fetch": 3, "fig": 2, "fig2": 2, "fig3": 2, "file": [2, 3], "filenam": [2, 3], "final": 3, "find": 3, "first": [2, 3], "fix": 3, "flori": 6, "follow": [0, 2, 3], "fork": 3, "format": [0, 2], "four": 3, "fprime_figur": 2, "frac": [0, 5], "free": 3, "frequent": 3, "from": [0, 2, 3, 5], "full": 3, "function": [0, 1, 2, 5], "g_": 0, "g_z": [2, 5], "g_z_numer": 2, "gave": 2, "gen_microdata": 2, "gener": [2, 3], "generate_data": 2, "get": 3, "github": 4, "githubusercont": 2, "given": 0, "good": 3, "googl": 3, "gradual": 2, "growth": 6, "guidanc": 3, "gz_figur": 2, "ha": 2, "handl": 4, "happen": 3, "hardwar": 3, "have": [2, 3, 4], "help": [2, 3], "hen14": 6, "hendren": [5, 6], "here": [1, 3], "high": [1, 2], "higher": 2, "highest": 2, "host": 3, "hour": 3, "how": [1, 2, 3], "html": [2, 6], "http": [2, 3, 6], "i": [1, 2, 3, 4, 5], "id_charity_crt_al": 2, "idea": [3, 6], "illustr": 2, "implement": 2, "implement_reform": 2, "impli": 2, "implicit": 6, "implicitli": 2, "improv": 3, "inc": 6, "includ": [0, 3], "incom": [0, 2, 5], "income_measur": [0, 2], "increas": [2, 3], "inde": 2, "index": 2, "infer": 2, "inform": 3, "init_notebook_mod": 2, "input": 0, "insid": 3, "instal": 3, "instanc": [0, 2], "interfac": [2, 3], "interfer": 3, "interpret": 2, "introduc": 3, "invers": [1, 4, 6], "inverseoptimaltax": [1, 2, 3], "iot": [1, 2, 3, 4], "iot1": 2, "iot_us": 2, "ipykernel_1959": 2, "ipython": 2, "isn": 3, "issu": 4, "item": 2, "its": [0, 2, 3], "j": 6, "jacob": [0, 5, 6], "jason": 4, "jdeback": 4, "jjz": 5, "jjz17": 6, "jmoneco": 6, "john": 4, "jongen": [0, 6], "journal": 6, "jpubeco": 6, "json": 2, "judgment": 6, "juli": 6, "just": 5, "kde_bw": [0, 2], "keep": [3, 5], "kreg": 0, "l": [3, 6], "label": 2, "languag": 3, "larg": 3, "larger": 3, "last": 2, "latest": 3, "law": 2, "layer": 2, "left": 3, "let": 2, "level": [1, 2], "lib": 2, "librari": 3, "like": [2, 3], "limit": 3, "line": [2, 3], "link": 1, "list": [1, 2], "literatur": 5, "live": 3, "local": [3, 5], "locat": 1, "lockwood": [0, 5, 6], "log_norm": 0, "look": 2, "lot": 5, "lower": 2, "lower_bound": [0, 2], "lowest": 2, "lw16": 6, "m": 3, "mac": 3, "machin": 3, "made": 3, "mai": [2, 3, 4, 5], "main": 2, "maintain": 3, "make": [1, 2, 3], "mani": 3, "margin": [0, 2, 5], "master": 3, "matter": 3, "matthew": 6, "maxim": 2, "maximum": 0, "mayb": 5, "mb": 3, "mean": [0, 3], "measur": [0, 6], "member": [1, 3], "merg": 3, "messag": 3, "method": [0, 1, 2], "micro": 0, "miniconda": 2, "minimum": 0, "minut": 3, "miss": 3, "model": [3, 4, 5], "modul": [1, 4], "moneco": 6, "monetari": 6, "more": [2, 3, 5], "most": [2, 3], "msg": 2, "mtr": [0, 2, 5], "mtr_figur": 2, "mtr_prime": [0, 2], "mtr_prime_figur": 2, "mtr_smooth_param": [0, 2], "mtr_smoother": [0, 2], "mtr_wrt": 2, "much": 2, "multipl": 2, "must": 0, "name": [0, 3], "nathaniel": 6, "nation": 6, "navig": 3, "nber": 6, "nberwo": 6, "nbr": 6, "necessari": [3, 5], "need": [2, 3, 5], "never": 3, "new": [3, 5], "newli": 3, "next": 3, "non": 0, "none": [0, 2], "norm": 6, "note": [2, 3, 5], "notebook": 2, "now": [2, 3], "number": [2, 3], "object": 1, "off": 2, "offlin": 2, "often": [2, 3], "one": [2, 3, 4], "onli": 3, "open": 3, "oper": 3, "optim": [1, 4], "optimum": 6, "order": [1, 2], "org": 6, "organ": [1, 3], "origin": 3, "other": 3, "otherwis": 5, "our": 0, "out": [2, 5], "output": [0, 2], "over": 0, "own": 3, "p": [4, 6], "packag": [1, 2, 3], "page": 3, "panda": [0, 2], "paper": 6, "paragraph": 3, "param": 2, "paramet": [0, 2], "parameter": 2, "parametr": [0, 2], "paramtool": 2, "part": 3, "parti": 6, "particular": 2, "pass": 3, "password": 3, "payer": [0, 2], "pdf": 5, "percent": 3, "period": 3, "pg": 5, "place": 2, "platform": 3, "pleas": [2, 3, 4], "plotli": 2, "point": [2, 5], "pol1": 2, "polci": 2, "polici": [0, 2, 6], "polit": 6, "posit": 6, "possibl": 3, "pre": 5, "preced": 3, "prefer": 6, "presid": 2, "previou": 3, "print_warn": 2, "prior": 3, "privileg": 3, "probabl": 0, "proce": 3, "process": 3, "program": 3, "progress": 2, "project": 3, "prompt": 3, "propos": 2, "provid": [1, 2, 3], "psl_exampl": 2, "pslmodel": [2, 3, 4], "pt": 2, "pubeco": 6, "public": 6, "pull": 4, "purpos": 3, "push": 3, "py": [0, 2, 3], "pytest": 3, "python": 4, "python3": 2, "question": [3, 4], "quickli": 4, "r": [0, 5], "rais": 2, "raise_error": 2, "rate": [0, 2, 5], "raw": [0, 2], "re": 3, "read_json_reform": 2, "readi": 3, "rec": 2, "recent": [2, 3], "recess": 6, "record": [2, 3], "refer": 2, "reform": 2, "regress": 2, "rel": 2, "remain": 2, "rememb": 3, "remot": 3, "repec": 6, "repo": 3, "report": 3, "repositori": [3, 4], "repres": 0, "request": 4, "research": 6, "resolv": 3, "result": 4, "return": [0, 2], "reveal": [2, 6], "revers": 2, "revert": 3, "review": 3, "revis": 2, "right": 3, "roughli": 2, "row": 2, "rule": 3, "run": [2, 3], "ryan": 4, "s006": 0, "same": 3, "scalar": 0, "schedul": 2, "schema": 2, "second": 3, "section": 3, "see": [0, 2, 3, 5], "select": 3, "self": 2, "separ": 3, "set": 2, "share": [2, 3], "short": 3, "should": [2, 3], "show": [2, 3], "sign": 3, "sinc": 2, "site": 2, "situat": 3, "size": 0, "skip": 3, "slice": 2, "slope": [0, 2], "smooth": [0, 5], "so": 3, "social": [0, 2, 5, 6], "softwar": 3, "some": [2, 3, 5], "somewhat": 2, "sourc": [0, 1, 3, 4, 5], "speak": 2, "specif": [2, 3], "specifi": [2, 3], "standard": 3, "start": 5, "statement": 3, "statist": 5, "statu": 3, "step": 3, "str": 0, "structur": 5, "style": [2, 3], "submit": 4, "subset": 3, "successfulli": 3, "suffici": 5, "suggest": 2, "suit": 3, "summar": 5, "sure": 3, "surprisingli": 2, "sw_weight": 0, "switch": 3, "syle": 2, "symbol": 3, "sync": 3, "system": 3, "t": [0, 3, 5, 6], "tag": 3, "take": [3, 5], "tax": [1, 4, 5, 6], "taxabl": [0, 5], "taxcalc": 2, "taxdata": 5, "taxpay": [2, 5], "tc": 2, "tcja": 2, "team": 3, "tell": [2, 3], "termin": 3, "test": 3, "text": 3, "thaat": 2, "than": [2, 3], "thei": 2, "them": [2, 3], "therefor": 2, "theta_": 5, "theta_figur": 2, "theta_z": [0, 2, 5], "thi": [0, 1, 2, 3], "think": 3, "those": [2, 3], "three": 2, "through": [2, 3], "tip": 3, "tmp": 2, "togeth": 2, "top": 2, "traceback": 2, "track": 3, "tree": 1, "true": 2, "try": [2, 3], "tupl": 0, "two": 2, "type": [0, 3], "typic": 3, "u": [2, 6], "under": 4, "underli": 2, "understand": 2, "underyl": 2, "unequ": 6, "unit": 0, "untest": 3, "up": [1, 3], "updat": 3, "upper": 3, "upper_bound": [0, 2], "upstream": 3, "url": 6, "us": [0, 2, 3, 6], "user": [2, 3], "usernam": 3, "usr": 2, "usual": 3, "v": 2, "v156y2017icp81": 6, "v77y2016icp30": 6, "val": 2, "validationerror": 2, "var": 2, "varepsilon": [0, 5], "ve": 3, "vector": 0, "veri": 2, "version": [3, 4], "via": 3, "view": 1, "w": [0, 5, 6], "wa": 2, "wai": 3, "want": 3, "we": [1, 2, 3, 5], "web": 3, "weight": [0, 2, 5, 6], "weight_var": [0, 2], "weinzierl": [0, 5, 6], "welfar": [0, 2, 5], "well": 2, "were": 2, "what": 2, "when": 3, "where": 3, "which": 3, "why": 2, "window": 3, "without": 3, "work": [2, 3, 6], "would": [2, 3], "write": 5, "written": 3, "year": 2, "yearval": 2, "you": [3, 4], "your": 3, "z": [0, 2, 5], "zf": 5, "zoutman": [0, 6], "zt": [0, 5]}, "titles": ["Inverse Optimal Tax Class Object", "API", "Inverse Optimal Tax Example", "Contributor Guide", "InverseOptimalTax", "Parameters", "References"], "titleterms": {"1": 2, "2": 2, "access": 2, "an": 2, "api": 1, "calcul": 2, "cite": 4, "class": [0, 2], "code": 3, "contributor": 3, "core": 4, "disclaim": 4, "docstr": 3, "exampl": 2, "footnot": 3, "format": 3, "git": 3, "github": 3, "guid": 3, "import": 2, "input": 2, "instanti": 2, "invers": [0, 2], "inverse_optimal_tax": 0, "inverseoptimaltax": 4, "iot": 0, "iot_comparison": 2, "issu": 3, "maintain": 4, "model": 2, "object": [0, 2], "optim": [0, 2], "paramet": 5, "plot": 2, "practic": 3, "pull": 3, "python": 3, "refer": 6, "request": 3, "result": 2, "setup": 3, "step": 2, "submit": 3, "tax": [0, 2], "visual": 2, "workflow": 3}}) \ No newline at end of file