引言:本人从小白自学python,为了测试基础学习效果,增加一定的促进,想通过参加全国计算机等级考试二级python来检验基础学习情况。在学习过程中,会将该过程编写的python小程序题目在此发表,希望找到共同学习的人一起讨论,可能发表的有许多不是很完善的地方,请大家指正。后期学习路线,还会继续通过参加一些社会类的考试来检验学习成果。高阶段学习的话,可能会参加一些python的比赛,或者自己接一些项目,然后会根据自己的情况将一些项目的Python程序在此分享。
码字不易,求赞,求关注,求赏
一、本项目来源:在学习数据分析时,经常需要模拟数据来进行测试,使用faker库可以快速自动生成批量的模拟数据。faker库可以根据针对不同国家生成该国家相符合的数据,可以很好的进行数据分析测试。
二、先上传代码。
import faker
import pandas as pd
fake = faker.Faker('zh_CN')
# print(fake.phone_number())
def get_data():
name = fake.name()
address = fake.address()
number = fake.phone_number()
id_card = fake.ssn()
birth_date = id_card[6:14]
email = fake.email()
key_list = ['姓名','详细地址','手机号码','身份证号码','出生年月','邮箱']
info_list = [name,address,number,id_card,birth_date,email]
person_info = dict(zip(key_list,info_list))
return person_info
df = pd.DataFrame(columns=['姓名','详细地址','手机号码','身份证号码','出生年月','邮箱'])
for i in range(1000):
df1 = pd.DataFrame([get_data()])
df = pd.concat([df,df1])
df.to_excel("模拟数据1.xlsx",index=None)
三、代码解读
这段代码主要用到了faker和pandas两个库,所以写代码之前,记得要下载这两个库。
pip install faker/pandas
pip install faker/pandas -i http://pypi.douban.com/simple/
定义一个函数,利用faker库中相应随机名字等生成相应的数据
然后利用for循环1000次,调用定义的函数,自动生成1000条数据
利用pandas库中的DataFrame生成对应的数据条目
最后导出成excel
四、脚本运行效果(生成的图片审核未通过,大家自己运行试试吧)