StructFrameAccessor(data: bigframes.dataframe.DataFrame)
Accessor object for structured data properties of the Series values.
Methods
explode
explode(column, *, separator: str = ".") -> bigframes.dataframe.DataFrame
Extract all child fields of struct column(s) and add to the DataFrame.
Examples:
>>> import bigframes.pandas as bpd
>>> import pyarrow as pa
>>> bpd.options.display.progress_bar = None
>>> countries = bpd.Series(["cn", "es", "us"])
>>> files = bpd.Series(
... [
... {"version": 1, "project": "pandas"},
... {"version": 2, "project": "pandas"},
... {"version": 1, "project": "numpy"},
... ],
... dtype=bpd.ArrowDtype(pa.struct(
... [("version", pa.int64()), ("project", pa.string())]
... ))
... )
>>> downloads = bpd.Series([100, 200, 300])
>>> df = bpd.DataFrame({"country": countries, "file": files, "download_count": downloads})
>>> df.struct.explode("file")
country file.version file.project download_count
0 cn 1 pandas 100
1 es 2 pandas 200
2 us 1 numpy 300
<BLANKLINE>
[3 rows x 4 columns]
Returns | |
---|---|
Type | Description |
DataFrame |
Original DataFrame with exploded struct column(s). |