生成数据帧,但只得到 1 行

问题描述

我希望在 Python 中使用 faker 库创建一个数据框,但我只能得到一行,不明白代码中有什么问题。这是一样的:

import pandas as pd

for dat in range(int(input())):
    dat = [[fake.email(),fake.phone_number(),fake.address(),fake.name(),fake.date(),fake.pyint(0,3)]]

v = pd.DataFrame(dat,columns=['Email','PhNo','Address','Name','Date','Children']) 

如果我通过打印或头部函数看到 v 中的列,我只能看到 1 行。 我希望根据用户输入查看整个行数,比如如果是 3,那么应该有 3 行。

解决方法

您在每个循环中覆盖 dat。您需要将新数据附加到现有数据中:

dat = []
for _ in range(int(input())):
   dat.append([fake.email(),fake.phone_number(),fake.address(),fake.name(),fake.date(),fake.pyint(0,3)])
,

您只是在每次迭代中更新“dat”值。先创建一个列表,然后添加数据。

sequence_number + 1

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...