Я хочу создать фиктивную переменную для каждой акции инвестора, на которую влияет обмен акциями в рамках слияния.В конечном счете, я хочу проверить разницу в готовности продать акцию, основываясь на том, выбрал ли инвестор акцию самостоятельно или был пассивно наделен путем обмена акциями.
У меня есть двафреймы данных.df1 содержит список инвесторов, их акций, дат и портфельных владений (то есть объема акций, которые они держат в любой момент времени):
Ввод:
investors stock date inventory
A 1 01/01/1990 100
A 1 02/01/1990 0
A 2 03/04/1995 50
A 2 04/04/1995 100
A 3 02/01/1990 100
A 3 03/01/1990 100
B 1 01/01/1990 50
B 1 02/01/1990 0
B 3 02/01/1990 50
B 3 03/01/1990 50
C 3 02/01/1990 200
C 3 03/01/1990 200
df2 содержитсписок слияний с акциями (по акциям приобретателя и целевой акции) и датам заключения сделок:
date acquirer target
02/01/1990 3 1
Я хочу найти инвесторов, на которых акции напрямую повлияли-пополнение (т. е. на дату слияния, полученные акции приобретателя за их владения целевыми акциями).
Окончательный результат должен выглядеть примерно так, как показано ниже.Поскольку покупатель 3 объединился с целью 1, а инвесторы A и B оба держали целевую акцию на дату слияния и, следовательно, получили акции покупателя с этого дня вперед, они отмечены в столбце обмена акциями.Инвестор C не помечен, несмотря на то, что он держал акции покупателя 3 на дату слияния, поскольку он не держал целевые акции до даты слияния.
Фиктивная переменная 1 должна начинаться на дату слияния для покупателяакции, и выполните всю оставшуюся часть набора данных для этой комбинации инвестор / акции (например, для инвестора А, все даты после 03.01.1990 для акции 3 также будут иметь 1 в столбце обмена акциями. df1 заканчивается 31/12/ 1996)
Было бы замечательно, если бы также была отмечена целевая дата до слияния.Т.е. присвоение 1 акциям покупателя и 2 целевым акциям.
Вывод:
investors stock date inventory stock-swap
A 1 01/01/1990 100 2
A 1 02/01/1990 0 2
A 2 03/04/1995 50 0
A 2 04/04/1995 100 0
A 3 02/01/1990 100 1
A 3 03/01/1990 100 1
B 1 01/01/1990 50 2
B 1 02/01/1990 0 2
B 3 02/01/1990 50 1
B 3 03/01/1990 50 1
C 3 02/01/1990 200 0
C 3 03/01/1990 200 0