-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
9959322
commit 956c25c
Showing
36 changed files
with
331 additions
and
158 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,92 @@ | ||
******** | ||
Charlie2 | ||
******** | ||
|
||
:Version: 2.0 | ||
:Author: Samuel R. Mathias | ||
:Contact: samuel.mathias@yale.edu | ||
:Github: http://github.com/sammosummo/Charlie2/ | ||
:License: MIT | ||
|
||
Introduction | ||
============ | ||
|
||
Charlie2 is a free, open-source, cross-platform neurocognitive test battery written in | ||
Python, with a focus on extendability. It will be used to collect data for one of our | ||
lab projects, but may be used freely by others. | ||
|
||
What does it do? | ||
================ | ||
|
||
Like its predecessor, Charlie2 runs neurocognitive tests. There are currently 9 tests in | ||
the battery, taking ~30 minutes to complete per proband. Each test has a docstring with | ||
citations; have a look in the `charlie2/tests` folder to see what is available. | ||
|
||
Notable features | ||
================ | ||
|
||
* Since Charlie2 is written in Python, it is cross-platform. I have had success running | ||
it on various platforms, from tablets running Windows 10 to Raspberry Pis. | ||
|
||
* Charlie2 works especially well on touchscreen devices. | ||
|
||
* Charlie2 has a GUI which allows the user to store/view proband metadata (e.g., their | ||
age, sex, and miscellaneous notes made before or after testing), run tests | ||
individually or in pre-defined batches, and back up data to a remote storage server | ||
such as Google Drive. | ||
|
||
* Modifying or adding new tests to Charlie2 is quick, easy and Pythonic. | ||
|
||
* Data are recorded after each trial. This means that you have access to trial-specific | ||
data rather than just the summary data. It also means that the tests are resumable; | ||
that is, the progress of each proband is retained. This prevents a proband from | ||
performing a test twice, and allows them to pick up where they left off, if a test | ||
gets interrupted. | ||
|
||
* Summary statistics are automatically computed after a proband completes a test. All of | ||
the data (summary and trial-specific) are stored within various formats, including | ||
human-readable csv files and Python pickles. | ||
|
||
What's changed | ||
============== | ||
|
||
Charlie2 has an entirely new code base. Below are the most significant changes. | ||
|
||
* Charlie2 is written in/for Python 3.6 or greater. It does not work with Python 2, and | ||
probably won't work with earlier versions of Python 3. | ||
|
||
* Rather than relying on command-line arguments, Charlie2 is GUI-based. | ||
|
||
* Most of the heavy lifting is done by PyQt5, not pygame, which is no longer a | ||
dependency. | ||
|
||
* Questionnaires have been completely removed. | ||
|
||
What (still) doesn't work | ||
========================= | ||
|
||
* Charlie2 is not stand-alone. | ||
|
||
* Charlie2 is **not** currently a regular Python package, so isn't installable via | ||
`pip`. This probably won't ever happen. | ||
|
||
Installation and usage | ||
====================== | ||
|
||
Charlie is simply a collection of Python scripts. All functionality is accessed from a | ||
PyQt5 application which is launched via `main.py`. If this is not enough information for | ||
you, I recommend performing the following steps: | ||
|
||
1. Download and install Miniconda for your platform from here: https://repo.continuum.io/miniconda/ | ||
|
||
2. Create a new conda environment called `Charlie2` and `activate` it. | ||
|
||
3. Run these commands: | ||
:: | ||
conda update conda | ||
conda install pip pyqt pandas | ||
pip install google-api-python-client oauth2client | ||
|
||
4. Download Charlie2: https://github.com/sammosummo/Charlie2/archive/master.zip | ||
|
||
5. `cd` to the directory you saved Charlie2 and run `python main.py`. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,6 @@ | ||
import numpy as np | ||
import matplotlib.pyplot as plt | ||
import numpy as np | ||
|
||
|
||
""" | ||
Sukhbinder | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,6 +5,7 @@ | |
""" | ||
import argparse | ||
from argparse import ArgumentParser | ||
|
||
from .recipes import str2bool | ||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.