python - Not able to generate a random array of categorical labels -
i have random state fixed seed using make predictive results replicable:
rng = np.random.randomstate(101) len(finaltestsentences) = 500
i trying use seed generate array of random categorical variables using unique list of possibilities. here's example (i used set
on training labels generate unique labels have):
unique_train_labels = set([u'bla', u'blee', u'blu', u'ma'])
i do:
categorical_random = np.array[rng.choice(unique_train_labels, len(finaltestsentences))]
but getting:
categorical_random = np.array[rng.choice(unique_train_labels, len(finaltestsentences))] file "mtrand.pyx", line 1072, in mtrand.randomstate.choice (numpy/random/mtrand/mtrand.c:11545) valueerror: must 1-dimensional or integer
note, workaround here
what going wrong , how can achieve aim?
if @ definition of np.random.choice
, you'll see a
, population, converted numpy array by
a = np.array(a, copy=false)
if set, conversion little different. example, np.array([1, 2, 3])
gives array 3 elements: array([1, 2, 3])
np.array({1, 2, 3})
gives array single element element set. because of dimension problem, numpy raises valueerror.
to avoid can either convert set list with:
rng.choice(list(unique_train_labels), len(finaltestsentences))
or directly use np.unique unique labels:
rng.choice(np.unique([u'bla', u'blee', u'blu', u'ma']), len(finaltestsentences))
Comments
Post a Comment