副问题[/!--empirenews.page--]

用这个简朴的器材天生带有多表的大型数据库,让你更好地用 SQL 研究数据科学。
在研究数据科学的进程中,最贫困的每每不是算法可能技能,而是怎样获取到一批原始数据。尽量网上有许多真实优质的数据集可以用于呆板进修,然而在进修 SQL 时却不是云云。
对付数据科学来说,认识 SQL 的重要性不亚于相识 Python 或 R 编程。假如想网络诸如姓名、年数、名誉卡信息、地点这些信息用于呆板进修使命,在 Kaggle 上查找专门的数据集比行使足够大的真实数据库要轻易得多。
假若有一个简朴的器材或库来辅佐你天生一个大型数据库,内外还存放着大量你必要的数据,岂不美哉?
不只仅是数据科学的入门者,纵然是履历富厚的软件测试职员也会必要这样一个简朴的器材,只需编写几行代码,就可以通过随机(可是是假随机)天生恣意数目但故意义的数据集。
因此,我要保举这个名为 pydbgen 的轻量级 Python 库。在后文中,我会扼要声名这个库的相干内容,你也可以阅读它的文档具体相识更多信息。
pydbgen 是什么
pydbgen 是一个轻量的纯 Python 库,它可以用于天生随机但故意义的数据记录(包罗姓名、地点、名誉卡号、日期、时刻、公司名称、地位、车牌号等等),存放在 Pandas Dataframe 工具中,并生涯到 SQLite 数据库或 Excel 文件。
怎样安装 pydbgen
今朝 1.0.5 版本的 pydbgen 托管在 PyPI(Python 包索引存储库)上,而且对 Faker 有依靠相关。安装 pydbgen 只必要执行呼吁:
pip install pydbgen
已经在 Python 3.6 情形下测试安装乐成,但在 Python 2 情形下无法正常安装。
怎样行使 pydbgen
在行使 pydbgen 之前,起主要初始化 pydb 工具。
import pydbgenfrom pydbgen import pydbgenmyDB=pydbgen.pydb()
随后就可以挪用 pydb 工具果真的各类内部函数了。可以凭证下面的例子,输出随机的美京城市和车牌号码:
myDB.city_real()>> 'Otterville'for _ in range(10): print(myDB.license_plate())>> 8NVX937 6YZH485 XBY-564 SCG-2185 XMR-158 6OZZ231 CJN-850 SBL-4272 TPY-658 SZL-0934
其它,假如你输入的是 city() 而不是 city_real(),返回的将会是虚拟的都市名。
print(myDB.gen_data_series(num=8,data_type='city'))>>New MichelleRobinboroughLeeburyKaylatownHamiltonfortLake ChristopherHannahstadWest Adamborough
天生随机的 Pandas Dataframe
你可以指定天生数据的数目和种类,但必要留意的是,返回功效均为字符串或文本范例。
testdf=myDB.gen_dataframe(5,['name','city','phone','date'])testdf
最终发生的 Dataframe 相同下图所示。

天生数据库表
你也可以指定天生数据的数目和种类,而返回功效是数据库中的文本可能变长字符串范例。在天生进程中,你可以指定对应的数据库文件名和表名。
myDB.gen_table(db_file='Testdb.DB',table_name='People',-
fields=['name','city','street_address','email'])
上面的例子种天生了一个能被 MySQL 和 SQLite 支持的 .db 文件。下图则表现了这个文件中的数据表在 SQLite 可视化客户端中打开的画面。

天生 Excel 文件
和上面的其余示例相同,下面的代码可以天生一个具有随机数据的 Excel 文件。值得一提的是,通过将 phone_simple 参数设为 False ,可以天生较长较伟大的电话号码。假如你想要进步本身在数据提取方面的手段,不妨实行一下这个成果。
myDB.gen_excel(num=20,fields=['name','phone','time','country'],phone_simple=False,filename='TestExcel.xlsx')
(编辑:湖南网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|