import numpy
def generate_dataset_local(
n: int,
data: int,
seed: int | None,
prevalence: float = 0.12
):
generate_random_seed = numpy.random.RandomState(seed)
X_matrix = generate_random_seed.normal(0, 1, size=(n, data))
weight = generate_random_seed.normal(0, 0.7, size=(data, ))
log_value = X_matrix @ weight
y: int = (generate_random_seed.rand(n) < prevalence * 1 / (1 + numpy.exp(-log_value))).astype(int)
for _ in range(int(n * 0.02)):
index_1, index_2 = generate_random_seed.randint(0, n), generate_random_seed.randint(0, data)
X_matrix[index_1, index_2] += generate_random_seed.uniform(3, 6)
y[index_1] = 1
return X_matrix, y