A tool to derive parameters from waveform data for cardiotoxicity research
Project description
CardioWave: A tool for waveform analysis
Parameters we can calculate
Common waveform parameters include peak count, average peak amplitude, etc. For more details please check Supporting Parameters
Usage
Prepare a CSV table like this format:
compound | concentration | well | plate | ..others.. | time | signal |
---|---|---|---|---|---|---|
CP1 | 0.1 | A1 | P1 | ... | 0 | 1000 |
CP1 | 0.1 | A1 | P1 | ... | 0.33 | 1001 |
... | ... | ... | ... | ... | ... | ... |
CP2 | 0.1 | A2 | P1 | ... | 0 | 1000 |
... | ... | ... | ... | ... | ... | ... |
The order of the rows and columns do not need to be fixed but the column names must be exactly the same to the required (e.g. lowercase). The following columns are compursory: 'plate', 'compound', 'concentration', 'well', 'time', 'signal'. Optional columns include 'cpid' (compound ID) and 'vendor'. Other columns will not be used.
import pandas as pd
from cdwave import data
from cdwave import derive
# Load and convert
df = pd.read_csv('data.csv')
loader = data.StandardCSVLoader(data=df)
dataset = loader.transfer()
# Calculate parameters
# The calculated parameters will be included in the dataset
derive.calc_parameters_for_waveforms(dataset)
# Save and load dataset
dataset.save('data.pickle.gz')
dataset = Data.loaddata('data.pickle.gz')
# Export parameters
parameter_df = dataset.get_parameter_df()
parameter_df.to_csv(os.path.join(data_path, 'parameters.csv'))
GUI has been moved to CarioWaveGUI
# Run by python package
python -m CardioWaveGUI
# Or run by command
python CardioWaveGUI/gui.py
Installation
Requirements
Basic requirements for core functions (deriving parameters from waveforms)
numpy>=1.16
scipy>=1.2
tqdm>=4.32
pandas>=0.24
statsmodels>=0.10.2
For GUI support and parameter analysis
matplotlib>=3.1
pyqt5>=5.9
All the packages required are included in the lastest Anaconda envrionment.
Make documents
-
Matplotlib is required to render pictures
-
Generate source code of documents
sphinx-apidoc -o docs/source -f cdwave
- Build
sphinx-build docs docs/_build
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
Built Distribution
File details
Details for the file CardioWave-0.2.3.tar.gz
.
File metadata
- Download URL: CardioWave-0.2.3.tar.gz
- Upload date:
- Size: 38.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e8632656656315661fb0aff5c71663f25c406ae0091d8a4fc24f79a6adb11337 |
|
MD5 | bb69ec58555b99443a57708c3f844238 |
|
BLAKE2b-256 | b5f628b4467b39b717282e95ec72fabc347b39e302408c7a57ea9e553e550974 |
File details
Details for the file CardioWave-0.2.3-py3-none-any.whl
.
File metadata
- Download URL: CardioWave-0.2.3-py3-none-any.whl
- Upload date:
- Size: 44.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e19671d26906f2b8d720bb0dfb159dffeefc5ded3e6b8e8f4e90d062620c656a |
|
MD5 | aa6a136ab35f87c05b5aff0da39dff22 |
|
BLAKE2b-256 | 059dc268558eb4296284ec93ed0eb5eb195ee00bdc886e167a7563d0b668849f |