MCPcopy
hub / github.com/pydata/xarray / test_replace

Function test_replace

xarray/tests/test_accessor_str.py:333–384  ·  view source on GitHub ↗
(dtype)

Source from the content-addressed store, hash-verified

331
332
333def test_replace(dtype) -> None:
334 values = xr.DataArray(["fooBAD__barBAD"], dims=["x"]).astype(dtype)
335 result = values.str.replace("BAD[_]*", "")
336 expected = xr.DataArray(["foobar"], dims=["x"]).astype(dtype)
337 assert result.dtype == expected.dtype
338 assert_equal(result, expected)
339
340 result = values.str.replace("BAD[_]*", "", n=1)
341 expected = xr.DataArray(["foobarBAD"], dims=["x"]).astype(dtype)
342 assert result.dtype == expected.dtype
343 assert_equal(result, expected)
344
345 pat = xr.DataArray(["BAD[_]*", "AD[_]*"], dims=["y"]).astype(dtype)
346 result = values.str.replace(pat, "")
347 expected = xr.DataArray([["foobar", "fooBbarB"]], dims=["x", "y"]).astype(dtype)
348 assert result.dtype == expected.dtype
349 assert_equal(result, expected)
350
351 repl = xr.DataArray(["", "spam"], dims=["y"]).astype(dtype)
352 result = values.str.replace(pat, repl, n=1)
353 expected = xr.DataArray([["foobarBAD", "fooBspambarBAD"]], dims=["x", "y"]).astype(
354 dtype
355 )
356 assert result.dtype == expected.dtype
357 assert_equal(result, expected)
358
359 values = xr.DataArray(
360 ["A", "B", "C", "Aaba", "Baca", "", "CABA", "dog", "cat"]
361 ).astype(dtype)
362 expected = xr.DataArray(
363 ["YYY", "B", "C", "YYYaba", "Baca", "", "CYYYBYYY", "dog", "cat"]
364 ).astype(dtype)
365 result = values.str.replace("A", "YYY")
366 assert result.dtype == expected.dtype
367 assert_equal(result, expected)
368 result = values.str.replace("A", "YYY", regex=False)
369 assert result.dtype == expected.dtype
370 assert_equal(result, expected)
371
372 result = values.str.replace("A", "YYY", case=False)
373 expected = xr.DataArray(
374 ["YYY", "B", "C", "YYYYYYbYYY", "BYYYcYYY", "", "CYYYBYYY", "dog", "cYYYt"]
375 ).astype(dtype)
376 assert result.dtype == expected.dtype
377 assert_equal(result, expected)
378
379 result = values.str.replace("^.a|dog", "XX-XX ", case=False)
380 expected = xr.DataArray(
381 ["A", "B", "C", "XX-XX ba", "XX-XX ca", "", "XX-XX BA", "XX-XX ", "XX-XX t"]
382 ).astype(dtype)
383 assert result.dtype == expected.dtype
384 assert_equal(result, expected)
385
386
387def test_replace_callable() -> None:

Callers

nothing calls this directly

Calls 3

assert_equalFunction · 0.90
replaceMethod · 0.80
astypeMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…