@@ -150,7 +150,7 @@ def operation(x):
150150
151151 # Concatenate assets if a sequence is given
152152 if not isinstance (assets , (xr .Dataset , xr .DataArray )):
153- assets = xr .concat (assets , dim = dim )
153+ assets = xr .concat (assets , dim = dim , join = "outer" )
154154 assert isinstance (assets , (xr .Dataset , xr .DataArray ))
155155
156156 # If there are no assets, nothing needs to be done
@@ -370,7 +370,7 @@ def merge_assets(
370370 capa_b_interp = interpolate_capacity (capa_b , year = years )
371371
372372 # Concatenate the two capacity arrays
373- result = xr .concat ((capa_a_interp , capa_b_interp ), dim = dimension )
373+ result = xr .concat ((capa_a_interp , capa_b_interp ), dim = dimension , join = "outer" )
374374
375375 #
376376 forgroup = result .pipe (coords_to_multiindex , dimension = dimension )
@@ -583,7 +583,9 @@ def agent_concatenation(
583583 )
584584 else :
585585 datum [name ] = key
586- result = xr .concat (data .values (), dim = dim )
586+ result = xr .concat (
587+ data .values (), dim = dim , join = "outer" , coords = "different" , compat = "equals"
588+ )
587589 if isinstance (result , xr .Dataset ):
588590 result = result .set_coords ("agent" )
589591 if "year" in result .dims :
0 commit comments