code: def skew(df: "DataFrame", unbiased=False):
      data_manager = df.data_manager
      n = df.shape[0]
  
      if unbiased and n < 3:
          field_names = data_manager.infer_operable_field_names()
          return pd.Series(
              [np.nan for _ in range(len(field_names))],
              index=field_names,
          )
  
      _mean = mean(df)
      m1 = df - _mean
      m2 = (m1**2).mean()
      m3 = (m1**3).mean()
  
      """
      if abs(value) in m2 < eps=1e-14, we regard it as 0, but eps=1e-14 should be global instead of this file.
      """
      non_zero_mask = abs(m2) >= FLOATING_POINT_ZERO
      m3[~non_zero_mask] = 0
      m2[~non_zero_mask] = 1
  
      if unbiased:
          return (n * (n - 1)) ** 0.5 / (n - 2) * (m3 / m2**1.5)
      else:
          return m3 / m2**1.5
  
file_path: FATE/python/fate/arch/dataframe/ops/_stat.py
imports: import functools
  import numpy
  import pandas
  import torch
  from .._dataframe import DataFrame
  from ..manager import DataManager
label_desc: Use image node_id 7 for calling a global function with example usage: skew(df, unbiased) and returns: pd, unknown, unknown