У меня есть 3 списка, как в следующем воспроизводимом примере:
year = [2015, 2016, 2017]
month = [1, 2]
ids = ['x', 'y', 'z', 'w']
Я хотел бы создать очень простую задачу создания окончательного фрейма данных, где у меня было 3 столбца, сортирующих его строки какперестановка или декартово произведение значений столбца.
Что-то вроде:
![enter image description here](https://i.stack.imgur.com/gY75j.png)
В конце я хотел бы добавить столбец «Epoque», где ссылка: декабрь2014 равен «1», январь 2015 года равен «2», февраль 2015 года равен «3» и т. Д. (Последовательность будет продолжена с исходной ссылкой декабрь 2014 = «1» (дляEpoque 'value)) ...
Конечный желаемый результат будет выглядеть следующим образом:
![enter image description here](https://i.stack.imgur.com/etvxp.png)
EDIT :
Вопрос отредактирован благодаря большой обратной связи @jezrael.Он предоставил мне строку, пропущенную для достижения нужного значения df, но пропустив только столбец «Epoque».
Мой код будет следующим (без нужного столбца «Epoque»):
import itertools
s = [ [ 2015, 2016, 2017], [1, 2], ['x', 'y', 'z', 'w'] ]
z = list(itertools.product(*s))
df = pd.DataFrame(z) # Trivial line provided kindly by @jezrael I didn't know.
Любая помощь в том, как эффективно достичь колонки «Эпоха», я был бы очень признателен.Спасибо.