|
3 | 3 | import pandas as pd
|
4 | 4 | import pyarrow as pa
|
5 | 5 | import pytest
|
6 |
| -from nested_pandas import NestedDtype, NestedFrame |
| 6 | +from nested_pandas import NestedDtype, NestedFrame, read_parquet |
7 | 7 | from nested_pandas.datasets import generate_data
|
8 | 8 | from nested_pandas.series.ext_array import NestedExtensionArray
|
9 | 9 | from nested_pandas.series.packer import pack_flat, pack_seq
|
@@ -1100,7 +1100,24 @@ def test_to_flatten_inner():
|
1100 | 1100 | assert_frame_equal(actual.nest.to_flat(), desired.nest.to_flat(), check_like=True)
|
1101 | 1101 |
|
1102 | 1102 |
|
1103 |
| -def test_to_flatten_outer_wrong_field(): |
| 1103 | +def test_to_flatten_inner_empty_inner(): |
| 1104 | + """Test .nest.to_flatten_inner for the case when inner frames are empty""" |
| 1105 | + nf = generate_data(10, 2) |
| 1106 | + nf["nested"][2:4] = [pd.DataFrame({"t": [], "flux": [], "band": []})] * 2 |
| 1107 | + nf = nf.assign(id=np.repeat(np.r_[0:5], 2)) |
| 1108 | + nf = nf.rename(columns={"nested": "inner"}) |
| 1109 | + nnf = NestedFrame.from_flat(nf, base_columns=[], on="id", name="outer") |
| 1110 | + |
| 1111 | + _actual = nnf["outer"].nest.to_flatten_inner("inner") |
| 1112 | + |
| 1113 | + |
| 1114 | +def test_to_flatten_inner_none_nested(): |
| 1115 | + """Test .nest.to_flatten_inner with vsx-x-ztfdr22_lc-m31.parquet file""" |
| 1116 | + nnf = read_parquet("tests/test_data/vsx-x-ztfdr22_lc-m31.parquet") |
| 1117 | + _actual = nnf["ztf"].nest.to_flatten_inner("lc") |
| 1118 | + |
| 1119 | + |
| 1120 | +def test_to_flatten_inner_wrong_field(): |
1104 | 1121 | """Test an exception is raised when .nest.to_flatten_inner() called for a wrong field."""
|
1105 | 1122 | nf = generate_data(10, 2)
|
1106 | 1123 | with pytest.raises(ValueError):
|
|
0 commit comments