Skip to main content
`Ctrl`+`K`

# pandas.core.groupby.DataFrameGroupBy.corrwith

DataFrameGroupBy.corrwith(other, axis=<no_default>, drop=False, method='pearson', numeric_only=False)

  Compute pairwise correlation.

  Pairwise correlation is computed between rows or columns of DataFrame with rows or columns of Series or DataFrame. DataFrames are first aligned along both axes before computing the correlations.

  Parameters:
    otherDataFrame, Series

      Object with which to compute correlations.

    axis{0 or ‘index’, 1 or ‘columns’}, default 0

      The axis to use. 0 or ‘index’ to compute row-wise, 1 or ‘columns’ for column-wise.

    dropbool, default False

      Drop missing indices from result.

    method{‘pearson’, ‘kendall’, ‘spearman’} or callable

      Method of correlation:

      - pearson : standard correlation coefficient

      - kendall : Kendall Tau correlation coefficient

      - spearman : Spearman rank correlation

      - callable: callable with input two 1d ndarrays

          and returning a float.

    numeric_onlybool, default False

      Include only float, int or boolean data.

      Added in version 1.5.0.

      Changed in version 2.0.0: The default value of `numeric_only` is now `False`.

  Returns:
    Series

      Pairwise correlations.

  See also

  `DataFrame.corr`

    Compute pairwise correlation of columns.

  Examples

      >>> index = ["a", "b", "c", "d", "e"]
      >>> columns = ["one", "two", "three", "four"]
      >>> df1 = pd.DataFrame(np.arange(20).reshape(5, 4), index=index, columns=columns)
      >>> df2 = pd.DataFrame(np.arange(16).reshape(4, 4), index=index[:4], columns=columns)
      >>> df1.corrwith(df2)
      one      1.0
      two      1.0
      three    1.0
      four     1.0
      dtype: float64

      >>> df2.corrwith(df1, axis=1)
      a    1.0
      b    1.0
      c    1.0
      d    1.0
      e    NaN
      dtype: float64