Giter VIP home page Giter VIP logo

jamovi

jamovi is a free and open statistics package, which is easy to use, and designed to be familiar to users of SPSS. It provides a spreadsheet editor, and a range of statistical analyses. jamovi can provide R syntax for each analysis that is run, and additional analyses for jamovi can be developed using the R language.

Come visit us at jamovi.org.

running

the easiest way to build and work on jamovi, is to build it as a docker container. clone this repo (and submodules), and then build it with:

git clone https://github.com/jamovi/jamovi.git
cd jamovi
git submodule update --init --recursive
docker-compose build

once built, it can be run with:

docker-compose up

this launches an embedded web-server, and jamovi can be accessed with a web-browser at the url http://127.0.0.1:41337

Development

Pre-requisites

Setup

Virtual Environment

Create a virtual environment using the following command:

poetry install

If poetry can't locate a Python executable with the correct version, ensure that you have the correct version installed and run these commands to force poetry to use it:

poetry env use PATH_TO_PYTHON_EXECUTABLE
poetry install

Usage

Activate the virtual environment

poetry shell

Developer section

Usage - Poetry

poetry shell  # to activate the virtual environment
poetry run COMMAND  # run a command in the venv without first activating it
poetry add DEPENDENCY  # add a production dependency
poetry add --group=dev DEVDEPENDENCY  # add a dev dependency
poetry add --group=GROUPNAME DEPENDENCY  # add a dependency to another group

poetry lock  # update the lock file
poetry install  # install dependencies from the lock file
poetry install --sync  # also remove untracked dependencies from venv
poetry update  # lock & install
poetry update --sync  # lock & install --sync

For more information about Poetry, see the [Poetry docs][poetry-docs].

Usage - Poe

We use poe to run tasks that simplify running things like tests, QA-tools, and docker. This is similar to how one might use make to simplify running commands with arguments or combinations of commands.

You can run poe in two ways:

# By first activating the virtual environment
poetry shell
poe TASKNAME [OPTIONAL_ADDITIONAL_ARGS]

# By using `poetry run` without activing the environment
poetry run poe TASKNAME [OPTIONAL_ADDITIONAL_ARGS]

For example, to run all tools that reformat code, you can run:

poetry shell
poe reformat

# or
poetry run poe reformat

For a list of all the available tasks, run poe --help or look at the task definitions in pypoetry.toml.

For more information about Poe the Poet, look at the [Poe docs][poe-docs].

Testing

Tests can be run with:

poe tests

VSCode

If you're using VSCode it's recommended to install the following extensions to make python development easier:

  • ms-python.debugpy
  • ms-python.pylint
  • ms-python.python
  • ms-python.vscode-pylance
  • charliermarsh.ruff

Configure virtual environment for VSCode

You can configure the interpreter path for the workspace so that you don't have to manually activate the terminal every time you open a terminal.

You can find the path to the python interpreter associated with the virtual environment easily by:

# Activate the environment
poetry shell
# Find the python path for this environment
where python

jamovi's Projects

jamovi icon jamovi

jamovi - open software to bridge the gap between researcher and statistician

jamovi-readstat icon jamovi-readstat

A python library for reading SPSS, SAS, and Stata data files, based on ReadStat

jmvbaser icon jmvbaser

A jamovi module which provides analyses from the base R packages

jmvtools icon jmvtools

An R package which makes it easy to develop modules for jamovi

medmod icon medmod

Mediation and moderation module for jamovi and R

scatr icon scatr

Create scatter plots with marginal density / box plots in jamovi and R

walrus icon walrus

Walrus - Robust Statistical Methods

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.