code: def gpdf(gs):
      int_col = list(range(len(gs)))
      random_col = int_col
      np.random.shuffle(random_col)
      str_col = [str(x) for x in int_col]
      key_col = np.repeat(np.arange(4), len(int_col) // 4)
      np.random.shuffle(key_col)
      result = gpd.GeoDataFrame(
          {
              "geometry": gs,
              "integer": int_col,
              "string": str_col,
              "random": random_col,
              "key": key_col,
          }
      )
      result["float"] = result["integer"].astype("float64")
      return result
  
imports: import geopandas
  import numpy
  import pandas
  import pytest
  from shapely.affinity import rotate
  from shapely.geometry import LineString, MultiLineString, MultiPoint, MultiPolygon, Point, Polygon
label_desc: Use image node_id 2 for calling a global function with example usage: gpdf(gs) and returns: result