Merge branch 'devel' of gitea-s2i2s.isti.cnr.it:moreo/QuaPy into devel
This commit is contained in:
commit
99bc8508ac
|
@ -108,8 +108,7 @@ class LabelledCollection:
|
||||||
"""
|
"""
|
||||||
Returns an index to be used to extract a random sample of desired size and desired prevalence values. If the
|
Returns an index to be used to extract a random sample of desired size and desired prevalence values. If the
|
||||||
prevalence values are not specified, then returns the index of a uniform sampling.
|
prevalence values are not specified, then returns the index of a uniform sampling.
|
||||||
For each class, the sampling is drawn with replacement if the requested prevalence is larger than
|
For each class, the sampling is drawn with replacement.
|
||||||
the actual prevalence of the class, or without replacement otherwise.
|
|
||||||
|
|
||||||
:param size: integer, the requested size
|
:param size: integer, the requested size
|
||||||
:param prevs: the prevalence for each class; the prevalence value for the last class can be lead empty since
|
:param prevs: the prevalence for each class; the prevalence value for the last class can be lead empty since
|
||||||
|
@ -153,7 +152,7 @@ class LabelledCollection:
|
||||||
for class_, n_requested in n_requests.items():
|
for class_, n_requested in n_requests.items():
|
||||||
n_candidates = len(self.index[class_])
|
n_candidates = len(self.index[class_])
|
||||||
index_sample = self.index[class_][
|
index_sample = self.index[class_][
|
||||||
np.random.choice(n_candidates, size=n_requested, replace=(n_requested > n_candidates))
|
np.random.choice(n_candidates, size=n_requested, replace=True)
|
||||||
] if n_requested > 0 else []
|
] if n_requested > 0 else []
|
||||||
|
|
||||||
indexes_sample.append(index_sample)
|
indexes_sample.append(index_sample)
|
||||||
|
@ -168,8 +167,7 @@ class LabelledCollection:
|
||||||
def uniform_sampling_index(self, size, random_state=None):
|
def uniform_sampling_index(self, size, random_state=None):
|
||||||
"""
|
"""
|
||||||
Returns an index to be used to extract a uniform sample of desired size. The sampling is drawn
|
Returns an index to be used to extract a uniform sample of desired size. The sampling is drawn
|
||||||
with replacement if the requested size is greater than the number of instances, or without replacement
|
with replacement.
|
||||||
otherwise.
|
|
||||||
|
|
||||||
:param size: integer, the size of the uniform sample
|
:param size: integer, the size of the uniform sample
|
||||||
:param random_state: if specified, guarantees reproducibility of the split.
|
:param random_state: if specified, guarantees reproducibility of the split.
|
||||||
|
@ -179,13 +177,12 @@ class LabelledCollection:
|
||||||
ng = RandomState(seed=random_state)
|
ng = RandomState(seed=random_state)
|
||||||
else:
|
else:
|
||||||
ng = np.random
|
ng = np.random
|
||||||
return ng.choice(len(self), size, replace=size > len(self))
|
return ng.choice(len(self), size, replace=True)
|
||||||
|
|
||||||
def sampling(self, size, *prevs, shuffle=True, random_state=None):
|
def sampling(self, size, *prevs, shuffle=True, random_state=None):
|
||||||
"""
|
"""
|
||||||
Return a random sample (an instance of :class:`LabelledCollection`) of desired size and desired prevalence
|
Return a random sample (an instance of :class:`LabelledCollection`) of desired size and desired prevalence
|
||||||
values. For each class, the sampling is drawn without replacement if the requested prevalence is larger than
|
values. For each class, the sampling is drawn with replacement.
|
||||||
the actual prevalence of the class, or with replacement otherwise.
|
|
||||||
|
|
||||||
:param size: integer, the requested size
|
:param size: integer, the requested size
|
||||||
:param prevs: the prevalence for each class; the prevalence value for the last class can be lead empty since
|
:param prevs: the prevalence for each class; the prevalence value for the last class can be lead empty since
|
||||||
|
@ -202,8 +199,7 @@ class LabelledCollection:
|
||||||
def uniform_sampling(self, size, random_state=None):
|
def uniform_sampling(self, size, random_state=None):
|
||||||
"""
|
"""
|
||||||
Returns a uniform sample (an instance of :class:`LabelledCollection`) of desired size. The sampling is drawn
|
Returns a uniform sample (an instance of :class:`LabelledCollection`) of desired size. The sampling is drawn
|
||||||
with replacement if the requested size is greater than the number of instances, or without replacement
|
with replacement.
|
||||||
otherwise.
|
|
||||||
|
|
||||||
:param size: integer, the requested size
|
:param size: integer, the requested size
|
||||||
:param random_state: if specified, guarantees reproducibility of the split.
|
:param random_state: if specified, guarantees reproducibility of the split.
|
||||||
|
|
Loading…
Reference in New Issue