code: def test_reduce_to_float(op):
      # some reduce ops always return float, even if the result
      # is a rounded number
      df = pd.DataFrame(
          {
              "A": ["a", "b", "b"],
              "B": [1, None, 3],
              "C": pd.array([1, None, 3], dtype="Int64"),
          }
      )
  
      # op
      result = getattr(df.C, op)()
      assert isinstance(result, float)
  
      # groupby
      result = getattr(df.groupby("A"), op)()
  
      expected = pd.DataFrame(
          {
              "B": np.array([1.0, 3.0]),
              "C": pd.array([1, 3], dtype="Float64"),
          },
          index=pd.Index(["a", "b"], name="A"),
      )
      tm.assert_frame_equal(result, expected)
  
imports: import operator
  import numpy
  import pytest
  import pandas
  import pandas._testing
  from pandas.core import ops
  from pandas.core.arrays import FloatingArray
label_desc: Use image node_id 16 for calling a global function with example usage: test_reduce_to_float(op) without return types