@@ -957,17 +957,20 @@ def test_nan_merge(axis_name, join_type, array_type):
957957 alt_axis , alt_axis_name = merge ._resolve_axis (1 - axis )
958958 mapping_attr = f"{ alt_axis_name } m"
959959 adata_shape = (20 , 10 )
960-
961- arr = array_type (
962- sparse . random ( adata_shape [ alt_axis ], 10 , density = 0.1 , format = "csr" )
963- )
964- arr_nan = arr .copy ()
960+ # TODO: Revert to https://github.com/scverse/anndata/blob/71fdf821919fc5ff3c864dc74c4432c370573984/tests/test_concatenate.py#L961-L970 after https://github.com/scipy/scipy/pull/23626.
961+ # The need for this handling arose as a result of
962+ # https://github.com/dask/dask/pull/11755/files#diff-65211e64fa680da306e9612b92c60f557365507d46486325f0e7e04359bce64fR456-R459
963+ sparse_arr = sparse . random ( adata_shape [ alt_axis ], 10 , density = 0.1 , format = "csr" )
964+ sparse_arr_nan = sparse_arr .copy ()
965965 with warnings .catch_warnings ():
966966 warnings .simplefilter ("ignore" , category = sparse .SparseEfficiencyWarning )
967967 for _ in range (10 ):
968- arr_nan [np .random .choice (arr .shape [0 ]), np .random .choice (arr .shape [1 ])] = (
969- np .nan
970- )
968+ sparse_arr_nan [
969+ np .random .choice (sparse_arr .shape [0 ]),
970+ np .random .choice (sparse_arr .shape [1 ]),
971+ ] = np .nan
972+ arr = array_type (sparse_arr )
973+ arr_nan = array_type (sparse_arr_nan )
971974
972975 _data = {"X" : sparse .csr_matrix (adata_shape ), mapping_attr : {"arr" : arr_nan }}
973976 orig1 = AnnData (** _data )
@@ -1811,7 +1814,7 @@ def test_concat_dask_sparse_matches_memory(join_type, merge_strategy):
18111814 X = sparse .random (50 , 20 , density = 0.5 , format = "csr" )
18121815 X_dask = da .from_array (X , chunks = (5 , 20 ))
18131816 var_names_1 = [f"gene_{ i } " for i in range (20 )]
1814- var_names_2 = [f"gene_{ i } { '_foo' if (i % 2 ) else '' } " for i in range (20 , 40 )]
1817+ var_names_2 = [f"gene_{ i } { '_foo' if (i % 2 ) else '' } " for i in range (20 )]
18151818
18161819 ad1 = AnnData (X = X , var = pd .DataFrame (index = var_names_1 ))
18171820 ad2 = AnnData (X = X , var = pd .DataFrame (index = var_names_2 ))
@@ -1821,7 +1824,6 @@ def test_concat_dask_sparse_matches_memory(join_type, merge_strategy):
18211824
18221825 res_in_memory = concat ([ad1 , ad2 ], join = join_type , merge = merge_strategy )
18231826 res_dask = concat ([ad1_dask , ad2_dask ], join = join_type , merge = merge_strategy )
1824-
18251827 assert_equal (res_in_memory , res_dask )
18261828
18271829
0 commit comments