Я создал случайную матрицу заданного размера, используя numpy. Для моделирования временных рядов я создал временной ряд с периодичностью месяц для соответствующей матрицы. Теперь я хотел бы объединить их и сделать их pandas кадром данных. Это то, что у меня пока есть -
import numpy as np
import pandas as pd
cols = ['time', 'cases', 'deaths', 'recoveries']
data = np.random.randint(0,50,(50,3))
times = pd.date_range('2019-12-01', periods=50, freq='MS')
df = pd.DataFrame(pd.concat(times, data, ignore_index=True), columns=cols)
Это дает следующую ошибку в строке 8 -
TypeError: cannot concatenate object of type '<class 'pandas._libs.tslibs.timestamps.Timestamp'>'; only Series and DataFrame objs are valid
Так что я попытался преобразовать его в серию, используя times = pd.Series(pd.date_range('2019-12-01', periods=50, freq='MS'))
, однако, в свою очередь дал ошибку -
TypeError: first argument must be an iterable of pandas objects, you passed an object of type "Series"
Ожидаемый O / P -
| time |cases|deaths|recoveries|
|------------------------------------|
| 2019-12-01 | 0 | 0 | 0 |
| 2020-01-01 | 1 | 0 | 0 |
| 2020-02-01 | 2 | 1 | 0 |