Package: pydatafaker
PyDataFaker is a python package to create fake data with relationships between tables. Creating fake data can be useful for many different applications such as creating product demos or testing software.Python already has a great package for creating fake data called Fakerhttps://faker.readthedocs.io/en/master/. Faker is great for creating individual fake units of data, but it can be time consuming to create more complicated fake data that is actually related to one another.Imagine you are developing a new enterprise resource planning (ERP) software to challenge SAP. You may need to create some fake data to test your application. You will need an invoice table, a vendor listing, purchase order table, and more. PyDataFaker allows your to quickly create these tables and generates relationships between them!PyDataFaker is currently under development. At this time it is possible to create the following entities:Business: create a fake business with common ERP like tablesSchool: create a fake schoolMore entities are currently being developed. If you  have any ideas of additional entities that should be included please submit an issue here:https://github.com/SamEdwardes/pydatafaker/issues.Table of contentsInstallationDocumentationUsageContributingCreditsInstallationpipinstallpydatafakerDocumentationDocumentation can be found athttps://pydatafaker.readthedocs.io/en/latest/index.html. The package is distributed through PyPi athttps://pypi.org/project/pydatafaker/UsageBusinessThe business module allows you to create fake business data. Callingbusiness.create_business()will return a dictionary of related tables.importpandasaspdfrompydatafakerimportbusinessbiz=business.create_business()biz.keys()dict_keys(['vendor_table', 'po_table', 'invoice_summary_table', 'invoice_line_item_table', 'employee_table', 'contract_table', 'rate_sheet_table', 'timesheet_table'])Each value inside the dictionary contains a Pandas DataFrame.biz['invoice_summary_table']<style scoped>
    .dataframe tbody tr th:only-of-type {
        vertical-align: middle;
    }.dataframe tbody tr th {
    vertical-align: top;
}

.dataframe thead th {
    text-align: right;
}</style>invoice_idamountinvoice_datepo_idvendor_id0inv_00001591572011-01-20po_00001vendor_000011inv_00002877962007-09-06po_00002vendor_000022inv_00003579632000-03-06po_00003vendor_000033inv_00004594092001-03-31po_00004vendor_000044inv_00005866142002-01-12po_00005vendor_00005..................445inv_00446833162012-09-02po_00087vendor_00087446inv_00447457072008-07-10po_00101vendor_00098447inv_004481119322002-09-26po_00158vendor_00012448inv_00449351042012-09-21po_00133vendor_00075449inv_00450153972015-12-15po_00054vendor_00054450 rows × 5 columnsTables can be joined together to add additional details.invoice_summary=biz['invoice_summary_table']vendors=biz['vendor_table']pd.merge(invoice_summary,vendors,how='left',on='vendor_id')<style scoped>
    .dataframe tbody tr th:only-of-type {
        vertical-align: middle;
    }.dataframe tbody tr th {
    vertical-align: top;
}

.dataframe thead th {
    text-align: right;
}</style>invoice_idamountinvoice_datepo_idvendor_idvendor_namevendor_descriptionaddressphoneemail0inv_00001591572011-01-20po_00001vendor_00001Smith-ScottFront-line multimedia emulation75343 Harper Corners Suite 581\nJuanberg, AK 0...(193)898-1652x129ftodd@example.org1inv_00002877962007-09-06po_00002vendor_00002Walker-MorganCross-platform radical solution941 Susan Isle\nThorntonberg, KS 82841+1-636-744-9620x3991rdunn@example.com2inv_00003579632000-03-06po_00003vendor_00003Noble and SonsConfigurable demand-driven emulation1442 Jason Rapid Apt. 409\nEast Jade, RI 44983477-214-2021x973tinaschmidt@example.com3inv_00004594092001-03-31po_00004vendor_00004Baker, Walker and DavenportFocused analyzing synergy89120 Kimberly Extensions\nSouth Annettetown, ...(643)621-7544x290sarahstephenson@example.com4inv_00005866142002-01-12po_00005vendor_00005Patterson LLCProfound maximized productivity880 Bryan Tunnel Apt. 542\nKaylabury, AK 50221586-422-7311x0127littleyesenia@example.net.................................445inv_00446833162012-09-02po_00087vendor_00087Wagner-GutierrezMulti-lateral motivating projection8771 Roger Road Suite 781\nDanielton, ID 88428001-023-820-3050x78454colliernicole@example.net446inv_00447457072008-07-10po_00101vendor_00098Simmons-LeonardFocused reciprocal secured line9010 Ashley Mountains\nMarthaton, VT 68298391-162-6024serranonancy@example.org447inv_004481119322002-09-26po_00158vendor_00012Welch LLCVersatile methodical interface4016 Brianna Road\nPort Andrealand, AR 22214+1-837-862-5571x172williamoliver@example.com448inv_00449351042012-09-21po_00133vendor_00075Franklin-BennettDigitized holistic methodology68125 Vega Plains Apt. 062\nEast Emily, OK 80097001-979-468-2358x530leroymoore@example.org449inv_00450153972015-12-15po_00054vendor_00054Barton-OneillMandatory 4thgeneration hierarchy107 Julie Passage Suite 904\nSouth George, OH ...(491)397-7771x41615jacksonrachel@example.com450 rows × 10 columnsSchoolimportpandasaspdfrompydatafakerimportschoolskool=school.create_school()skool.keys()skool['student_table']<style scoped>
    .dataframe tbody tr th:only-of-type {
        vertical-align: middle;
    }.dataframe tbody tr th {
    vertical-align: top;
}

.dataframe thead th {
    text-align: right;
}</style>student_idnamegradeteacher_id0student_0001Tyler Campbell1teacher_00071student_0003Melissa Coleman1teacher_00102student_0011Crystal Church1teacher_00143student_0017Paul Gray1teacher_00074student_0023Joshua Morales1teacher_0010...............31student_0258Nicole Hoffman7teacher_001532student_0261Joseph Lewis7teacher_000933student_0294Susan Jacobs7teacher_001534student_0299Mark Whitehead7teacher_000935student_0300Melissa Sosa7teacher_0015300 rows × 4 columnsContributingPlease seedocs/source/contributing.rst.CreditsDeveloped by:Sam EdwardesLogo:Icon made byFreepikfromwww.flaticon.comFront fromfontmeme.com/retro-fonts/Logo generated usinglogomakr.com