- Electronic Lab Notebook
- Reproducible code
- Data documentation
- Open Access Publishin
This repository will be updated frequently with new information and guidelines. A data package is a collection of all digital parts of a research project including data, code, texts (protocols, reports, questionnaires, meta data). The collection is created in such a way that reproducing all results is straightforward.
When creating a data package, you should keep the following three principles in mind:
- Files should be organized in a conventional folder structure
- Data, methods, and output should be clearly separated
- The computational environment should be specified
When working on your data package, you can follow the steps below:
- Think about a good folder structure
- Create folder structure (main directory and sub directories)
- Add all files needed for reproducing the results of the project
- Try to have the data package as clean and easy to use (add readme files to important folders)
- Have a peer check the data package and see if it works correctly
- When you finished the data package, place it in your data archive or repository
Finally, you can use the following checklist to see if you included all relevant files:
- Readme file(s)
- Metadata file
- Documentation file
- Raw data
- Processed data
- Protocols
- Methodologies
- Scripts
The DataCite schema provides persistent identifiers (DOIs) for research data and other research outputs.
For more information visit the DataCite website
- Python (version 3.8.5)
- Pandas (version 1.1.3)
- chardet (version 3.0.4)
working_document='DataCiteExample.txt'
data_to_check=pd.read_csv('DataCiteExample.txt',sep='\t')
data_to_json=create_json_object(data_to_check)
After you succesfully loaded your document, the first test will try and identify if you use a FAIR file format:
fairness_file=CheckFairification(file_name='DataCiteExample.txt')
fairness_file.score_fairness_data_type()
The second test can be used to identify if your document contains the required fields based on an xml schema.
Here, we will test if our document meets the DataCite standards:
check_data=CheckDataValidity(Data=data_json,type='DataCite')
check_data.set_the_mandatory_fields()
check_data.check_required_fields()
print('Test 1: check if all required fields are present: %s' % check_data.required_fields)
check_data.check_for_na()
print('Test 2: json object contains no NA values: %s ' % check_data.na_checked)
check_data.check_format_of_date()
print('Test 3: format date check: %s' % check_data.correct_format)
print('Overall the metadata %s the test. Please revise your documentation.' % check_data.required_fields)
The test output can be used to improve your documentation before you upload your dataset to a repository or archive.
Copyright (c) 2022, TJM KuijpersAll rights reserved.
This source code is licensed under the BSD-3-Clause.