У меня большой фрейм данных, который содержит информацию об адресе (CUST_ADDRESS_1 и CUST_ADDRESS_2).
CUST_ADDRESS_1 должен содержать только информацию об улицах, например 123 Anywhere Drive, тогда как CUST_ADDRESS_2 должен содержать только информацию о Suite, например Suite 23.
Я хочу найти все случаи, когда информация Suite находится в CUST_ADDRESS_1, и поместить ее в CUST_ADDRESS_2.
Я в порядке, если информация Suite заменяет текущие данные в CUST_ADDRESS_2, но я хочу, чтобы данные заменялись только в том случае, если они удовлетворяют этому условию.
Например:
до
CUST_ADDRESS_1 CUST_ADDRESS_2
986 Eastern Drive Suite 180
763 Sunset Drive, Suite 2 Attn: Mark Matthews
543 Roanoke Lane
4201 Practice Road, Suite 18
ПОСЛЕ
CUST_ADDRESS_1 CUST_ADDRESS_2
986 Eastern Drive Suite 180
763 Sunset Drive Suite 2
543 Roanoke Lane
4201 Practice Road, Suite 18
Если попытаться выполнить следующее, но если информация Suite не найдена в CUST_ADDRESS_1, она удалит данные в CUST_ADDRESS_2.
RosterFinal$CUST_ADDRESS_2 <- if_else(grepl("SUITE",RosterFinal$CUST_ADDRESS_1),substr(RosterFinal$CUST_ADDRESS_1,(regexpr("SUITE", RosterFinal$CUST_ADDRESS_1)-1),nchar(RosterFinal$CUST_ADDRESS_1)),if_else(grepl(" STE",RosterFinal$CUST_ADDRESS_1),substr(RosterFinal$CUST_ADDRESS_1,(regexpr(" STE", RosterFinal$CUST_ADDRESS_1)-1),nchar(RosterFinal$CUST_ADDRESS_1)),if_else(grepl(" #",RosterFinal$CUST_ADDRESS_1),substr(RosterFinal$CUST_ADDRESS_1,(regexpr(" #", RosterFinal$CUST_ADDRESS_1)-1),nchar(RosterFinal$CUST_ADDRESS_1)),"")))