code: def get_glm_coef_df(info_dict):
      """Gets the coefficients dataframe for generalized linear models.
  
      The dataframe includes the estimated values, the standard errors, the Z-test
      values, the Z-test p-values, the significance code and 95% confidence Z-intervals.
      The tests and intervals are based on the asymptotic normality of MLE.
  
      Parameters
      ----------
      info_dict : `dict`
          The information dictionary returned by
          `~greykite.algo.common.model_summary_utils.add_beta_var_lm`.
  
      Returns
      -------
      info_dict : `dict`
          The information dictionary with the following keys added:
  
              "coef_summary_df" : `pandas.DataFrame`
                  The summary df for estimated coefficients.
              "significance_code_legend" : `str`
                  The significance code legend.
      """
      beta = info_dict["beta"]
      std_err = np.sqrt(np.abs(np.diag(info_dict["beta_var_cov"])))
      # Gets z-values
      z_values = beta / std_err
      # Gets p-values and significance codes
      p_values = 2 * norm.cdf(-np.abs(z_values)).ravel()
      sig_codes = [
          "***"
          if p < 0.001
          else "**"
          if p < 0.01
          else "*"
          if p < 0.05
          else "."
          if p < 0.1
          else " "
          for p in p_values
      ]
      # Gets 95% confidence intervals
      z_975 = norm.ppf(0.975)
      ci_lb = beta - z_975 * std_err
      ci_ub = beta + z_975 * std_err
      ci = list(zip(ci_lb, ci_ub))
      # Makes full df
      info_dict["coef_summary_df"] = pd.DataFrame(
          {
              "Pred_col": info_dict["pred_cols"],
              "Estimate": beta,
              "Std. Err": std_err,
              "z value": z_values,
              "Pr(>|Z|)": p_values,
              "sig. code": sig_codes,
              "95%CI": ci,
          }
      )
      info_dict[
          "significance_code_legend"
      ] = "0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1"
      return info_dict
  
imports: import numpy
  import pandas
  import statsmodels
  import statsmodels.api
  from scipy.stats import f
  from scipy.stats import norm
  from scipy.stats import t
  from sklearn.base import clone
  from sklearn.linear_model import Ridge
  from sklearn.model_selection import train_test_split
  from greykite.algo.common.col_name_utils import INTERCEPT
  from greykite.algo.common.col_name_utils import simplify_pred_cols
label_desc: Use image node_id 9 for calling a global function with example usage: get_glm_coef_df(info_dict) and returns: info_dict