У меня есть два кадра данных, с которыми я хочу сделать перестановки. Я хочу переставить всех «поставщиков» и их «производительность» из Dataframe A с максимальным количеством уникальных «индикаторов» в dataframe B.
Sample Dataframe A:
30day_random.head(3)
vendor views impressions traffic_pct spend conv_rate
1 a 0.0 101319.0 0.000000 0.00 5.314897
2 b 0.0 101319.0 0.000000 0.00 5.314897
3 c 15727.0 101319.0 15.522261 6045 5.314897
Sample Dataframe B:
criteria_ranges = [30day_random,[.005,.01,.015,.02,.025,.03],[50,100,150,200,250],[7,14,21,30]]
criteria_permutations = list(itertools.product(*criteria_ranges))
criteria_permutations = [list(x) for x in criteria_permutations]
criteria_permutations.insert(0,['source','traffic_share','spend_share','days'])
criteria_df = pd.DataFrame(criteria_permutations[1:],columns=criteria_permutations[0])
criteria_df.head()
source traffic spend_share days
0 vendor 0.005 50 7
1 vendor 0.005 50 14
2 vendor 0.005 50 21
3 vendor 0.005 50 30
4 vendor 0.005 100 7
Вы увидите, что я пытался добавить Dataframe A, 30day_random
, в список списков, надеясь, что тогда я смогу переставить строки со строками из criteria_df
. Все, что он делает, это загружает в заголовок столбца, vendor
, в отличие от всех столбцов из обоих фреймов данных с соответствующими значениями строк.
Кто-нибудь знает, как соединить их так, чтобы конечный результат сохранял целостность строк обоих фреймов данных?