scikit-learn/scikits/learn/datasets/samples_generator/linear.py

28 lines
910 B
Python
Executable File

import numpy as np
import numpy.random as nr
def sparse_uncorrelated(nb_samples=100, nb_features=10):
"""
Function creating simulated data with sparse uncorrelated design.
(cf.Celeux et al. 2009, Bayesian regularization in regression)
X = NR.normal(0,1)
Y = NR.normal(X[:,0]+2*X[:,1]-2*X[:,2]-1.5*X[:,3])
The number of features is at least 10.
Parameters
----------
nb_samples : int
number of samples (defaut is 100).
nb_features : int
number of features (defaut is 5).
Returns
-------
X : numpy array of shape (nb_samples, nb_features) for input samples
Y : numpy array of shape (nb_samples) for labels
"""
X = nr.normal(loc=0, scale=1, size=(nb_samples, nb_features))
Y = nr.normal(loc=X[:, 0] + 2 * X[:, 1] - 2 * X[:,2] - 1.5 * X[:, 3],
scale = np.ones(nb_samples))
return X, Y