Предположим, у меня есть фрейм данных под названием «Основной» этого формата, который будет иметь большую комбинацию региона и типа с дублированной комбинацией региона/типа, но в этом примере я упрощаю:
Код: Выделить всё
Region Type Value
A 1 600
A 2 700
B 1 700
B 2 900
У меня также есть еще один фрейм данных «Проб», который состоит из региона, типа и вероятности. Вероятность всегда будет фиксированной для данной комбинации региона и типа.
Код: Выделить всё
Region Type Probability
A 1 50%
A 2 30%
B 1 50%
B 2 30%
Для каждой строки в верхней таблице я ищу вероятность из фрейма данных «Prob» на основе региона и типа и заставляю Python работать случайным образом на основе вероятности того, что я Добавим дополнительную строку в «Основной» фрейм данных. Однако эта дополнительная строка данных, которую я добавлю, будет взята случайным образом из другого фрейма данных «Дополнительные», который имеет ту же форму, что и «Основной».
Код: Выделить всё
Region Type Value
A 1 600
A 1 300
A 2 700
A 2 950
B 1 700
B 1 50
B 2 900
B 2 300
Но: я могу извлечь из «Дополнительных» только строку, которая имеет тот же регион и тип, что и в «Основном» кадре данных, и как только я Взяв эту строку данных, я удаляю ее из фрейма данных «Дополнительно», готового к вычислению следующей строки в «Основном», поскольку я не хочу дважды вытягивать одну и ту же строку из фрейма данных «Дополнительно» (на самом деле эти фреймы данных будут намного больше).
Пытаюсь понять, что, как я полагаю, представляет собой многоэтапный процесс – возможно, в цикле? - это можно сделать довольно просто. В конце концов у меня будет, например, фрейм данных, который будет выглядеть примерно так:
Код: Выделить всё
Region Type Value
A 1 600
A 2 700
B 1 700
B 2 900
A 2 950
...где в моих четырех строках «Основного» фрейма данных в регионе A типу 2 «повезло», и мы выполняем расчет добавления строки из дополнительных данных выше и извлекаем A / 2/950 и добавьте ее в фрейм данных (удалив ее из фрейма данных «Дополнительно»).
Подробнее здесь:
https://stackoverflow.com/questions/786 ... robability