在 400K pandas 数据框中添加随机日期

add random dates in 400K pandas dataframe

正在尝试将第四列附加到以下长度为 465017 的数据帧。

     0        1     2
0   228055  231908  1
1   228056  228899  1

运行 以下语法

x["Fake_date"]= fake.date(pattern="%Y-%m-%d", end_datetime=None)

returns

     0        1    2    Fake_date
0   228055  231908  1   1980-10-12
1   228056  228899  1   1980-10-12

但我希望实例的 465017 行有不同的随机日期,

      0       1    2    Fake_date
0   228055  231908  1   1980-10-11
1   228056  228899  1   1980-09-12

我如何随机化这个?

没有 faker 包,你可以这样做:

import numpy as np
import pandas as pd

x["Fake_date"] = np.random.choice(pd.date_range('1980-01-01', '2000-01-01'), len(x))

>>> x
        0       1  2  Fake_date
0  228055  231908  1 1999-12-08
1  228056  228899  1 1989-01-25

pd.date_range() 中的 2 个日期字符串替换为您要从中选择随机日期的最小和最大日期