import numpy as np
from spatialdm.stats import rbfweight, Moran_R
np.random.seed(0)
X1 = np.random.rand(100, 5)
X2 = np.random.rand(100, 5)
X2[:-1, 0], X2[:, 1], X2[1:, 2] = X1[1:, 0], X1[:, 1], X1[:-1, 2]
X2 = X2 + 0.01 * np.random.rand(100, 5)
X_loc = np.vstack([np.repeat(range(10), 10), np.tile(range(10), 10)]).T
spatial_W, KNN_connect = rbfweight(X_loc, l=1.2, n_neighbors=16)
R, z, p = Moran_R(X1, X2, spatial_W)
print(R, z, p)
#
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(6, 3))
plt.subplot(1, 2, 1)
plt.scatter(X_loc[:, 0], X_loc[:, 1], c=X1[:, 0], s=100)
plt.subplot(1, 2, 2)
plt.scatter(X_loc[:, 0], X_loc[:, 1], c=X2[:, 0], s=100)
plt.tight_layout()
plt.show()
