Skip to main content

Generate and characterize designs with four-and-two-level (FATL) factors

Project description

Four And Two Level Designs

PyPI version CI

The fatld package contains functionality to generate and characterize designs with four-and-two-level (FATL) factors. Design characteristics include word length pattern, defining relation, and number of clear interactions. For more information about the package see the documentation at https://abohyndoe.github.io/fatld/. A large collection of FATL designs can be explored interactively using a web app at https://abohyndoe.shinyapps.io/fatldesign-selection-tool/.

Usage

The package can be used from Python:

>>> import fatld
>>> D = fatld.Design(runsize=32, m=1, cols=[21, 27, 29])
>>> D.wlp()
[1, 3, 3, 0, 0]
>>> D.defining_relation()
['A1cef', 'A3deg', 'A1cdeh']
>>> print("There are %s 2-2 interactions clear from any main effect or other two-factor interaction." % D.clear('2-2'))
There are 6 2-2 interactions clear from any main effect or other two-factor interaction.
>>> print("The design contains %s four-level factors and %s two-level factors" % (D.m, D.n))
The design contains 1 four-level factors and 6 two-level factors

For more examples see the documentation.

Installation

The Python interface to the package is available on pypi. Installation can be done using the following command:

pip install fatld

Development

All development is done in a virtual environment based on poetry, activate it using:

poetry shell

Code style

  • Try to follow the PEP 8 style guide. A usefull tool for automated formatting is black. We do allow lines upto 120 characters.

  • Document functions using the Numpy docstring convention

  • Linting is based on ruff, configuration is found in the pyproject.toml file.

  • Tests are ran using pytest and a coverage report can be generated using coverage inside the virtual environment:

    coverage run -m pytest tests
    coverage report -m
    

Submitting code

If you would like to contribute, please submit a pull request. (See the Github Hello World example, if you are new to Github).

By contributing to the repository you state you own the copyright to those contributions and agree to include your contributions as part of this project under the BSD license.

Bugs reports and feature requests

To submit a bug report or feature request use the Github issue tracker. Search for existing and closed issues first. If your problem or idea is not yet addressed, please open a new issue.

Contact

For further information please contact alexandre dot bohyn at kuleuven dot be

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

fatld-0.1.7.tar.gz (17.1 kB view details)

Uploaded Source

Built Distribution

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

fatld-0.1.7-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file fatld-0.1.7.tar.gz.

File metadata

  • Download URL: fatld-0.1.7.tar.gz
  • Upload date:
  • Size: 17.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.8.5 Linux/4.4.0-19041-Microsoft

File hashes

Hashes for fatld-0.1.7.tar.gz
Algorithm Hash digest
SHA256 98c88d27dcfb8d28d12b18ef4614242cb537beb1638d6ef88b95add72c5d42f0
MD5 546c96cee23d9177bdd7743c32aefb37
BLAKE2b-256 012b92e673e4f98c0d23719a779874f8809733e607f2648cee8993db1b019ae0

See more details on using hashes here.

File details

Details for the file fatld-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: fatld-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 17.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.8.5 Linux/4.4.0-19041-Microsoft

File hashes

Hashes for fatld-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 ffa207d6e9fc6adf51dcd2bb7651a933f7c2e3bfa9c6c56628d1a82180623f1e
MD5 78ad8b59b8c230f45ec839dbbd16bc5e
BLAKE2b-256 0dde0e0c9a99ae7b0ca4707b66de9aed7cce64a8f767f39548500121ea9effb0

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