Coverage for /var/srv/projects/api.amasfac.comuna18.com/tmp/venv/lib/python3.9/site-packages/pandas/_testing/_random.py: 64%
11 statements
« prev ^ index » next coverage.py v6.4.4, created at 2023-07-17 14:22 -0600
« prev ^ index » next coverage.py v6.4.4, created at 2023-07-17 14:22 -0600
1import string
3import numpy as np
6def randbool(size=(), p: float = 0.5):
7 return np.random.rand(*size) <= p
10RANDS_CHARS = np.array(list(string.ascii_letters + string.digits), dtype=(np.str_, 1))
11RANDU_CHARS = np.array(
12 list("".join(map(chr, range(1488, 1488 + 26))) + string.digits),
13 dtype=(np.unicode_, 1),
14)
17def rands_array(nchars, size, dtype="O", replace=True) -> np.ndarray:
18 """
19 Generate an array of byte strings.
20 """
21 retval = (
22 np.random.choice(RANDS_CHARS, size=nchars * np.prod(size), replace=replace)
23 .view((np.str_, nchars))
24 .reshape(size)
25 )
26 return retval.astype(dtype)
29def rands(nchars) -> str:
30 """
31 Generate one random byte string.
33 See `rands_array` if you want to create an array of random strings.
35 """
36 return "".join(np.random.choice(RANDS_CHARS, nchars))