code: def beta(returns, factor_returns, risk_free=0.0, out=None):
      
      if not (isinstance(returns, np.ndarray) and
              isinstance(factor_returns, np.ndarray)):
          returns, factor_returns = _aligned_series(returns, factor_returns)
  
      return beta_aligned(
          returns,
          factor_returns,
          risk_free=risk_free,
          out=out,
      )
docs: Calculates beta.
  
      Parameters
      ----------
      returns : pd.Series
          Daily returns of the strategy, noncumulative.
          - See full explanation in :func:`~empyrical.stats.cum_returns`.
      factor_returns : pd.Series
           Daily noncumulative returns of the factor to which beta is
           computed. Usually a benchmark such as the market.
           - This is in the same style as returns.
      risk_free : int, float, optional
          Constant risk-free return throughout the period. For example, the
          interest rate on a three month us treasury bill.
      out : array-like, optional
          Array to use as output buffer.
          If not passed, a new array will be created.
  
      Returns
      -------
      beta : float