Convert pandas values found in a list of labeled objects. Parameters ---------- objects : list of Dataset or mapping The mappings may contain any sort of objects coercible to xarray.Variables as keys, including pandas objects. Returns ------- List of Dataset
(objects: Iterable[CoercibleMapping])
| 509 | |
| 510 | |
| 511 | def coerce_pandas_values(objects: Iterable[CoercibleMapping]) -> list[DatasetLike]: |
| 512 | """Convert pandas values found in a list of labeled objects. |
| 513 | |
| 514 | Parameters |
| 515 | ---------- |
| 516 | objects : list of Dataset or mapping |
| 517 | The mappings may contain any sort of objects coercible to |
| 518 | xarray.Variables as keys, including pandas objects. |
| 519 | |
| 520 | Returns |
| 521 | ------- |
| 522 | List of Dataset or dictionary objects. Any inputs or values in the inputs |
| 523 | that were pandas objects have been converted into native xarray objects. |
| 524 | """ |
| 525 | from xarray.core.coordinates import Coordinates |
| 526 | from xarray.core.dataarray import DataArray |
| 527 | from xarray.core.dataset import Dataset |
| 528 | |
| 529 | out: list[DatasetLike] = [] |
| 530 | for obj in objects: |
| 531 | variables: DatasetLike |
| 532 | if isinstance(obj, Dataset | Coordinates): |
| 533 | variables = obj |
| 534 | else: |
| 535 | variables = {} |
| 536 | if isinstance(obj, PANDAS_TYPES): |
| 537 | obj = dict(obj.items()) |
| 538 | for k, v in obj.items(): |
| 539 | if isinstance(v, PANDAS_TYPES): |
| 540 | v = DataArray(v) |
| 541 | variables[k] = v |
| 542 | out.append(variables) |
| 543 | return out |
| 544 | |
| 545 | |
| 546 | def _get_priority_vars_and_indexes( |
no test coverage detected
searching dependent graphs…