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

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.3.2.post0.tar.gz (828.9 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.3.2.post0-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file checkmatesample-0.3.2.post0.tar.gz.

File metadata

  • Download URL: checkmatesample-0.3.2.post0.tar.gz
  • Upload date:
  • Size: 828.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.20

File hashes

Hashes for checkmatesample-0.3.2.post0.tar.gz
Algorithm Hash digest
SHA256 db0dbc4d7a5a4efc0bb015e5ee2bc99f07fe1581afe9e04390d4c1682cdf778b
MD5 9aa52359439942c414c35bcd764e0f10
BLAKE2b-256 a09028bfb5024a42d76241d65924fc557c1621d9bad34d62a8d07fa160647319

See more details on using hashes here.

File details

Details for the file CheckmateSample-0.3.2.post0-py3-none-any.whl.

File metadata

File hashes

Hashes for CheckmateSample-0.3.2.post0-py3-none-any.whl
Algorithm Hash digest
SHA256 a654a18ecb9164629b9f962ae583044ade5f983c03cd86fe3ef9167755c47791
MD5 fd77e4a5d93ce73def0b39bd2f675868
BLAKE2b-256 62c490f62c9459db26fd4bc696ac00fe77b6f00582791345d0a8c4993e94e9a9

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