code: def customer_lifetime_value(
          self, transaction_prediction_model, frequency, recency, T, monetary_value, time=12, discount_rate=0.01, freq="D"
      ):
          
          # use the Gamma-Gamma estimates for the monetary_values
          adjusted_monetary_value = self.conditional_expected_average_profit(frequency, monetary_value)
          return _customer_lifetime_value(
              transaction_prediction_model, frequency, recency, T, adjusted_monetary_value, time, discount_rate, freq=freq
          )
docs: Return customer lifetime value.
  
          This method computes the average lifetime value for a group of one
          or more customers.
  
          Parameters
          ----------
          transaction_prediction_model: model
              the model to predict future transactions, literature uses
              pareto/ndb models but we can also use a different model like beta-geo models
          frequency: array_like
              the frequency vector of customers' purchases
              (denoted x in literature).
          recency: the recency vector of customers' purchases
                   (denoted t_x in literature).
          T: array_like
              customers' age (time units since first purchase)
          monetary_value: array_like
              the monetary value vector of customer's purchases
              (denoted m in literature).
          time: float, optional
              the lifetime expected for the user in months. Default: 12
          discount_rate: float, optional
              the monthly adjusted discount rate. Default: 0.01
          freq: string, optional
              {"D", "H", "M", "W"} for day, hour, month, week. This represents what unit of time your T is measure in.
  
          Returns
          -------
          Series:
              Series object with customer ids as index and the estimated customer
              lifetime values as values