Hi,
I ran the following Python code block:
adata.obsm["X_umap"] = np.random.default_generator().normal(0, 1, size=(adata.n_obs, 2))
adata.varm["gene_stuff"] = np.random.default_generator().normal(
0, 1, size=(adata.n_vars, 5)
)
adata.obsm
And I got the error message:
Traceback (most recent call last):
File "", line 1, in
AttributeError: module 'numpy.random' has no attribute 'default_generator'
Traceback (most recent call last):
File "", line 1, in
AttributeError: module 'numpy.random' has no attribute 'default_generator'
Diagnostic:
The error occurs because np.random.default_generator() was deprecated in NumPy version 1.20.0 and later. Instead, you should use np.random.default_rng().
Corrected Code:
import numpy as np
# Generate random UMAP coordinates for observations
adata.obsm["X_umap"] = np.random.default_rng().normal(0, 1, size=(adata.n_obs, 2))
# Generate random data for genes
adata.varm["gene_stuff"] = np.random.default_rng().normal(
0, 1, size=(adata.n_vars, 5)
)
adata.obsm
Best Regards
Alex Chu