python daframe 간 join 시에 동일한 key값 말고, 포함관계인 key값을 매칭시킬 수 있을까요?

조회수 344회

python daframe 간 join 시에 동일한 key값 말고, 포함관계인 key값을 매칭시킬 수 있을까요?

예를 들어

A B C D E
ABC 1 2 3 4
EFG 5 6 7 8
HIJ 9 10 11 12

DF_A가 있고

F G H I J
AB 13 14 15 16
EF 17 18 19 20
HI 21 22 23 24

DF_B가 있습니다.

제가 원하는 건 A컬럼과 F컬럼을 기준으로 두 데이터프레임을 결합하는 것이며, 이때 A의 1열은 ABC, F의 1열은 BC이고, 이처럼 동일한 키값은 아니지만 포함관계로써 조건을 충족할 때 매칭되어 결합시키는 방법이 있을까요?

아래는 제가 원하는 형태의 데이터프레임입니다.

A B C D E G H I J
ABC 1 2 3 4 13 14 15 16
EFG 5 6 7 8 17 18 19 20
HIJ 9 10 11 12 21 22 23 24

각각의 데이터프레임을 딕셔너리 형태로 변형하고, KEY의 포함정도를 통해 매칭시켜 데이터프레임을 결합해봤지만, 위의 컬럼명들은 모두 유지되지 않아서 앞서 말씀드린 방법을 시도해보고 있습니다.

혹시 제가 말씀드린 방법이 불가능하다면, 컬럼은 유지하되 컬럼값들 간의 포함관계를 기준으로 두 데이터 프레임을 결합하는 방법이 있을까요?

  • 13은 없어져야 하나요? 엽토군 2022.10.20 11:56
  • 아 표를 제가 잘못 기입했습니다! 13이 있어야 합니다! osc0533@gmail.com 2022.10.20 11:58
  • 표 수정 하였습니다! osc0533@gmail.com 2022.10.20 11:59
  • BC 는 ABC에도 BCD 에도 포함됩니다. 어디로 join 되어야 하나요? nowp 2022.10.20 12:05
  • 아 제가 그런 부분을 신경 못썼네요 ㅠㅠ 표 수정하였습니다! osc0533@gmail.com 2022.10.20 12:07

1 답변

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)