locan.simulation.simulate_locdata.make_NeymanScott#

locan.simulation.simulate_locdata.make_NeymanScott(parent_intensity=100, region=(0, 1.0), expansion_distance=0, offspring=None, clip=True, shuffle=True, seed=None)[source]#

Generate clustered point data following a Neyman-Scott random point process. Parent positions are distributed according to a homogeneous Poisson process with parent_intensity within the boundaries given by region expanded by the expansion_distance. Each parent position is then replaced by offspring points as passed or generated by a given function. Offspring from parent events that are located outside the region are included.

Parameters:
  • parent_intensity (int | float) – The intensity (points per unit region measure) of the Poisson point process for parent events.

  • region (Union[Region, _SupportsArray[dtype[Any]], _NestedSequence[_SupportsArray[dtype[Any]]], bool, int, float, complex, str, bytes, _NestedSequence[Union[bool, int, float, complex, str, bytes]]]) – The region (or support) for all features. If array-like it must provide upper and lower bounds for each feature.

  • expansion_distance (float) – The distance by which region is expanded on all boundaries.

  • offspring (Union[_SupportsArray[dtype[Any]], _NestedSequence[_SupportsArray[dtype[Any]]], bool, int, float, complex, str, bytes, _NestedSequence[Union[bool, int, float, complex, str, bytes]], Callable[..., Any], None]) – Points or function for point process to provide offspring points. Callable must take single parent point as parameter. If array-like it must have enough elements to fit the randomly generated number of parent events.

  • clip (bool) – If True the result will be clipped to ‘region’. If False the extended region will be kept.

  • shuffle (bool) – If True shuffle the samples.

  • seed (Union[None, int, Sequence[int], SeedSequence, BitGenerator, Generator]) – random number generation seed

Returns:

The generated samples, labels, parent_samples of shape (n_samples, n_features) and region

Return type:

tuple[npt.NDArray[np.float64], npt.NDArray[np.int64], npt.NDArray[np.float64], Region]