- 1.27.0 (latest)
- 1.26.0
- 1.25.0
- 1.24.0
- 1.22.0
- 1.21.0
- 1.20.0
- 1.19.0
- 1.18.0
- 1.17.0
- 1.16.0
- 1.15.0
- 1.14.0
- 1.13.0
- 1.12.0
- 1.11.1
- 1.10.0
- 1.9.0
- 1.8.0
- 1.7.0
- 1.6.0
- 1.5.0
- 1.4.0
- 1.3.0
- 1.2.0
- 1.1.0
- 1.0.0
- 0.26.0
- 0.25.0
- 0.24.0
- 0.23.0
- 0.22.0
- 0.21.0
- 0.20.1
- 0.19.2
- 0.18.0
- 0.17.0
- 0.16.0
- 0.15.0
- 0.14.1
- 0.13.0
- 0.12.0
- 0.11.0
- 0.10.0
- 0.9.0
- 0.8.0
- 0.7.0
- 0.6.0
- 0.5.0
- 0.4.0
- 0.3.0
- 0.2.0
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(
... [
... {"project": "pandas", "version": 1},
... {"project": "pandas", "version": 2},
... {"project": "numpy", "version": 1},
... ],
... dtype=bpd.ArrowDtype(pa.struct(
... [("project", pa.string()), ("version", pa.int64())]
... ))
... )
>>> downloads = bpd.Series([100, 200, 300])
>>> df = bpd.DataFrame({"country": countries, "file": files, "download_count": downloads})
>>> df.struct.explode("file")
country file.project file.version download_count
0 cn pandas 1 100
1 es pandas 2 200
2 us numpy 1 300
<BLANKLINE>
[3 rows x 4 columns]
Returns | |
---|---|
Type | Description |
DataFrame |
Original DataFrame with exploded struct column(s). |