{"id":26057608,"url":"https://github.com/rcfgroup/headfake","last_synced_at":"2025-04-11T04:50:57.873Z","repository":{"id":48504684,"uuid":"193661986","full_name":"rcfgroup/headfake","owner":"rcfgroup","description":"Health data faker tool which generates data based on a YAML template","archived":false,"fork":false,"pushed_at":"2024-08-23T12:26:16.000Z","size":5702,"stargazers_count":6,"open_issues_count":2,"forks_count":0,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-25T02:51:32.505Z","etag":null,"topics":["data","declarative","fake","generate","health","json","python","statistics","yaml"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rcfgroup.png","metadata":{"files":{"readme":"README.md","changelog":"HISTORY.md","contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-06-25T07:58:12.000Z","updated_at":"2025-03-24T20:20:35.000Z","dependencies_parsed_at":"2024-08-24T00:46:25.335Z","dependency_job_id":null,"html_url":"https://github.com/rcfgroup/headfake","commit_stats":{"total_commits":94,"total_committers":4,"mean_commits":23.5,"dds":0.2021276595744681,"last_synced_commit":"94bd03eeab51240b9868dc6aedd3a7d01278c38a"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rcfgroup%2Fheadfake","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rcfgroup%2Fheadfake/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rcfgroup%2Fheadfake/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rcfgroup%2Fheadfake/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rcfgroup","download_url":"https://codeload.github.com/rcfgroup/headfake/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248345289,"owners_count":21088243,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["data","declarative","fake","generate","health","json","python","statistics","yaml"],"created_at":"2025-03-08T11:50:05.693Z","updated_at":"2025-04-11T04:50:57.856Z","avatar_url":"https://github.com/rcfgroup.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"![](https://github.com/rcfgroup/clinicle/workflows/main/badge.svg) [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.4890383.svg)](https://doi.org/10.5281/zenodo.4890383)\n# Headfake\n\n## What is Headfake?\n**Hea**lth **d**ata **fake**r is a Python-based package which allows the user to use a declarative approach to create fake or test data sets.\nusing either Python code, or a YAML or JSON-based template file.\n\nThe package can be embedded directly into Python scripts, or it can be used through a command-line script.\n\nIt takes ideas from other declarative packages (e.g. pydbgen), but also adds support for a number of additional features\nincluding statistically distributed random values; dependent fields and custom fields as well as approaches for\ntransforming generated fields before/after the generation process.\n\n## How do I install and use Headfake?\nTo get started quickly, you can use pip to install it:\n```bash\npip install headfake\n```\n\nThen test it out using one of the example YAML templates:\n```bash\nheadfake examples/patients.yaml --no-rows=100\n```\n\nYou should get 100 rows of generated data.\n\nFor further information on using Headfake head over to [Tutorials](https://rcfgroup.github.io/headfake/tutorials/tutorial1) or the [Usage](https://rcfgroup.github.io/headfake/usage) page.\n\n## Why would I use Headfake?\nHeadfake makes it simple and straightforward to generate fake or test data. It has a number of features which make this easier:\n\n* Support for shareable template-based config or direct Python implementation to setup and perform the data generation.\n\n* Embeddable data generation into projects (either using a YAML or JSON config or using Python data structures/classes).\n\n* Generation of names and contact details through use of the Python package Faker.\n\n* Randomised names can be output based on a gender field.\n\n* More realistic simulated data uses statistical distributions to create date of birth and also probability-based option values. Other approaches to simulate real data are also being investigated.\n\n* Clinical data supported includes random NHS numbers and deceased flags/date of death based on age-based odds of death.\n\n* Dependent fields (e.g. one field's values are dependent on the values from one or more)\n\n* Operation fields (e.g. combine generated values using specific operations such as add or subtract)\n\n* Field data can be looked up from another file using a key field, allowing re-use of patient details in a different field set.\n\n* A selection of fields to handle generation of different types of data.\n\n* Ability to create and use custom fields to generate your own data types and values\n\n* Support for transformers which pre or post-process data once it's been generated\n\n\n## Is Headfake being actively maintained?\nYes, we are using Headfake is our own projects and as result are keep it maintained and adding new features when we need them.\n\n## Is Headfake suitable for my project?\nThe library has been released under an MIT license so can be embedded into your own tools with minimal restrictions on use.\n\n## If I use Headfake to generate data in my research project which source should I cite?\nWe are working on a journal paper, for now please cite the [Zenodo record](https://doi.org/10.5281/zenodo.4890383).\n\n## Where can I get more information?\nThe documentation for the package can be found on the [documentation site](https://rcfgroup.github.io/headfake)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frcfgroup%2Fheadfake","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frcfgroup%2Fheadfake","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frcfgroup%2Fheadfake/lists"}