@@ -13,8 +13,8 @@ class CheckVarsAndDimsIterDataPipe(IterDataPipe):
13
13
def __init__ (
14
14
self ,
15
15
source_datapipe : IterDataPipe ,
16
- expected_dimensions : Iterable [str ],
17
- expected_data_vars : Iterable [str ],
16
+ expected_dimensions : Optional [ Iterable [str ]] = None ,
17
+ expected_data_vars : Optional [ Iterable [str ]] = None ,
18
18
dataset_name : Optional [str ] = None ,
19
19
):
20
20
"""
@@ -41,19 +41,23 @@ def __iter__(self) -> Union[xr.DataArray, xr.Dataset]:
41
41
"""
42
42
for xr_data in self .source_datapipe :
43
43
if self .dataset_name is None :
44
- xr_data = validate_data_vars (xr_data , self .expected_data_vars )
45
- xr_data = validate_dims (xr_data , self .expected_dimensions )
46
- xr_data = validate_coords (xr_data , self .expected_dimensions )
44
+ if self .expected_data_vars is not None :
45
+ xr_data = validate_data_vars (xr_data , self .expected_data_vars )
46
+ if self .expected_dimensions is not None :
47
+ xr_data = validate_dims (xr_data , self .expected_dimensions )
48
+ xr_data = validate_coords (xr_data , self .expected_dimensions )
47
49
else :
48
- xr_data [self .dataset_name ] = validate_data_vars (
49
- xr_data [self .dataset_name ], self .expected_data_vars
50
- )
51
- xr_data [self .dataset_name ] = validate_dims (
52
- xr_data [self .dataset_name ], self .expected_dimensions
53
- )
54
- xr_data [self .dataset_name ] = validate_coords (
55
- xr_data [self .dataset_name ], self .expected_dimensions
56
- )
50
+ if self .expected_data_vars is not None :
51
+ xr_data [self .dataset_name ] = validate_data_vars (
52
+ xr_data [self .dataset_name ], self .expected_data_vars
53
+ )
54
+ if self .expected_dimensions is not None :
55
+ xr_data [self .dataset_name ] = validate_dims (
56
+ xr_data [self .dataset_name ], self .expected_dimensions
57
+ )
58
+ xr_data [self .dataset_name ] = validate_coords (
59
+ xr_data [self .dataset_name ], self .expected_dimensions
60
+ )
57
61
yield xr_data
58
62
59
63
0 commit comments