добавить случайные даты в кадр данных 400K pandas

Попытка добавить четвертый столбец к следующему фрейму данных длиной 465017.

     0        1     2
0   228055  231908  1
1   228056  228899  1

Выполнение следующего синтаксиса

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

возвращается

     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

Как рандомизировать это?


person lpt    schedule 27.03.2018    source источник
comment
Что такое fake?   -  person roganjosh    schedule 28.03.2018
comment
Пакет pyhton из импорта обманщика Faker fake=Faker()   -  person lpt    schedule 28.03.2018


Ответы (1)


Без пакета 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

заменив 2 строки даты в pd.date_range() минимальной и максимальной датой, из которой вы хотите выбрать случайные даты

person sacuL    schedule 27.03.2018