설문 조사에 대한 응답 또는 클릭 스트림 데이터에 관계없이 사용자 이벤트를 기록하는 플랫폼의 데이터가 있습니다. 관련 데이터 세트를 여러 개 가져 오려고합니다. 각 데이터 세트에는 session_id 열이 있습니다.두 목록에 대한 SQL 스타일 외부 조인
각 데이터 세트는 일련의 중첩 목록으로 읽힌 CSV로 시작되었습니다. 모든 세션에서 사용자가 질문에 답하거나 특정 작업을 완료하지는 않으므로 각 데이터 집합에 이 아닌에는 모든 세션에 대한 항목이 포함되어 있습니다. 그러나 모든 세션은 데이터 집합 중 하나 이상에 있습니다.
예 :
기록 5 개 세션이있는 가정 데이터 세트 1 :
SessionID | a | b | c | d
1 | x | x | x | x
2 | x | x | x | x
5 | x | x | x | x
데이터 세트 2 :
SessionID | e | f | g | h
1 | x | x | x | x
3 | x | x | x | x
5 | x | x | x | x
데이터 세트 3 :
SessionID | i | j | k | l
2 | x | x | x | x
3 | x | x | x | x
4 | x | x | x | X
나는이 구성 것이다 방법 :
세션 ID를 | A | b | c | d | 전자 | f | h | i | j | k | l
1 | x | x | x | x | x | x | x | x | - | - | - | -
2 | x | x | x | x | - | - | - | - | x | x | x | x
3 | - | - | - | - | x | x | x | x | x | x | x | x
4 | - | - | - | - | - | - | - | - | x | x | x | x
5 | x | x | x | x | x | x | x | x | - | - | - | -이 작업을 수행하는 가장 쉬운 방법으로
는 팬더에 각 CSV를 가져 오는 것입니다 :
merged_df = pd.merge(dataset1, dataset2, how = 'outer', on="sessionID")
pd.merge(merged_df, dataset3, how = 'outer', on="sessionID")
요구 사항이 내가 어떤 외부 라이브러리를 사용하지 않는 것이 있습니다 그러나.
sessionID의 갭을 감지하고 3 개의 목록을 단순히 함께 추가 할 수 있도록 null 데이터로 목록을 채우는 데 유용한 논리를 찾는 데 어려움을 겪고 있습니다.
아이디어가 있으십니까?
sqlite3이 잘 작동하는 것 같습니다. 감사! –