code: def test_incremental_weighted_mean_and_variance_simple(rng, dtype):
      mult = 10
      X = rng.rand(1000, 20).astype(dtype) * mult
      sample_weight = rng.rand(X.shape[0]) * mult
      mean, var, _ = _incremental_mean_and_var(
          X, 0, 0, 0, sample_weight=sample_weight
      )
  
      expected_mean = np.average(X, weights=sample_weight, axis=0)
      expected_var = (
          np.average(X**2, weights=sample_weight, axis=0)
          - expected_mean**2
      )
      assert_almost_equal(mean, expected_mean)
      assert_almost_equal(var, expected_var)
  
imports: import numpy
  import pytest
  from scipy import linalg, sparse
  from scipy.linalg import eigh
  from scipy.sparse.linalg import eigsh
  from scipy.special import expit
  from sklearn.datasets import make_low_rank_matrix, make_sparse_spd_matrix
  from sklearn.utils import gen_batches
  from sklearn.utils._arpack import _init_arpack_v0
  from sklearn.utils._testing import assert_allclose, assert_allclose_dense_sparse, assert_almost_equal, assert_array_almost_equal, assert_array_equal, skip_if_32bit
  from sklearn.utils.extmath import _deterministic_vector_sign_flip, _incremental_mean_and_var, _randomized_eigsh, _safe_accumulator_op, cartesian, density, log_logistic, randomized_svd, row_norms, safe_sparse_dot, softmax, stable_cumsum, svd_flip, weighted_mode
  from sklearn.utils.fixes import COO_CONTAINERS, CSC_CONTAINERS, CSR_CONTAINERS, DOK_CONTAINERS, LIL_CONTAINERS, _mode
label_desc: Use image node_id 23 for calling a global function with example usage: test_incremental_weighted_mean_and_variance_simple(rng, dtype) without return types