Я не был уверен, как произнести название, так что, надеюсь, это несколько понятно.
Что мне нужно, так это с этим фреймом данных и отображением:
isin date val
SE0000195570 2014-10-23 1
SE0000195570 2014-07-16 2
SE0000195570 2014-04-29 3
SE0000195570 2014-01-31 4
SE0000191827 2018-10-19 5
SE0000191827 2018-07-11 6
SE0000191827 2018-04-20 7
SE0000191827 2018-02-16 8
mapping = {
'SE0000195570': [1,2],
'SE0000191827': [4,5,6]
}
Я хочу произвести этот вывод.
isin date sec val
SE0000195570 2014-10-23 1 1
SE0000195570 2014-10-23 2 1
SE0000195570 2014-07-16 1 2
SE0000195570 2014-07-16 2 2
SE0000195570 2014-04-29 1 3
SE0000195570 2014-04-29 2 3
SE0000195570 2014-01-31 1 4
SE0000195570 2014-01-31 2 4
SE0000191827 2018-10-19 4 5
SE0000191827 2018-10-19 5 5
SE0000191827 2018-10-19 6 5
SE0000191827 2018-07-11 4 6
SE0000191827 2018-07-11 5 6
SE0000191827 2018-07-11 6 6
SE0000191827 2018-04-20 4 7
SE0000191827 2018-04-20 5 7
SE0000191827 2018-04-20 6 7
SE0000191827 2018-02-16 4 8
SE0000191827 2018-02-16 5 8
SE0000191827 2018-02-16 6 8
Как видите, каждая строка для SE0000195570
и SE0000191827
была повторена один раз для каждого элемента в их соответствующих сопоставлениях. В некотором смысле, я добавил новый столбец к первичному ключу и соответственно изменил размер кадра.
Я попытался просто добавить новый столбец sec
в индекс, но это не помогло. Я застрял на том, как сделать это эффективно. Зацикливание, вероятно, не вариант, так как моя последняя таблица пройдет более миллиона строк.