Skip to main content

A sample project with checkerboard functionality

Project description

CheckmateSample

This Python module provides a function to generate a checkerboard pattern using NumPy. The function make_checkerboard creates a 2D NumPy array representing a checkerboard with customizable board size and square (and rectangle) sizes. Can be used for geospatial ML problems to try and combat autocorrelation. The functions can export two (testing/training) and three (testing/training/validation) checkerboard patterns

Parameters

board_size (tuple[int, int]): Size of the board in (rows, columns).

square_size (tuple[int, int]): Size of each square in (rows, columns).

separation_size (int): Size of separation distance in pixels between squares.

validation (bool): If True, use a ternary (0, 1, 2) pattern; if False, use a binary (0, 1) pattern

verbose flag: True / False

an example of this is:

checkerboard_01 = make_checkerboard(board_size=(70,70), square_size=(10,10), separation_size=2)

xarray only:

dim_names (dict): Dictionary specifying the names of x and y dimensions da (xr.DataArray): Input DataArray to apply the checkerboard pattern to

an example of this:

ds = xr.tutorial.load_dataset('air_temperature')

air_temp = ds.air.isel(time=0)

square_size = (7, 5)  # 7x5 pixel squares
checkerboard_temp_0 = make_checkerboard_xr(air_temp, square_size, separation_size=3, keep_pattern=0, validation=False)

Dependencies

numpy and xarray

Useage

Create a NumPy checkerboard

checkerboard = make_checkerboard((10, 10), (2, 2))

Create an xarray DataArray

da = xr.DataArray(np.random.rand(100, 100), dims=['lat', 'lon'])

Apply checkerboard pattern to DataArray

result = make_checkerboard_xr(da, (10, 10), keep_pattern=1)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

checkmatesample-0.0.post1.tar.gz (837.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

checkmatesample-0.0.post1-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

Details for the file checkmatesample-0.0.post1.tar.gz.

File metadata

  • Download URL: checkmatesample-0.0.post1.tar.gz
  • Upload date:
  • Size: 837.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.21

File hashes

Hashes for checkmatesample-0.0.post1.tar.gz
Algorithm Hash digest
SHA256 d4343f0110a3ccd692e8b690a176afa2827f6f10fe71dbcd1a864731e3fb0766
MD5 5d70a013e84df948be7c6b7eda88d35d
BLAKE2b-256 a5374e63a32c44a04801869927b26acf1887a8f2f454171af7f70e81e3703197

See more details on using hashes here.

File details

Details for the file checkmatesample-0.0.post1-py3-none-any.whl.

File metadata

File hashes

Hashes for checkmatesample-0.0.post1-py3-none-any.whl
Algorithm Hash digest
SHA256 f316b4756b4bc403902dd7a8e19527326ec83285c5d9fe43637c753752bc1358
MD5 69608392ce3bd0dc1d117d6f7053adcd
BLAKE2b-256 0a3549138ac57cd949212f170d66bb1f60cb67440b26f2328f98c076d36e4378

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page