:가에 따라 두 CSV 파일을 병합 키 및 보조 키 I는 다음과 같이 두 개의 CSV 파일을 병합하려는
csv1 :
formula,solver,runtime,conflicts
CBS_k3_n100_m403_b30_13.cnf,SWDiA5BY,0.001842,318
CBS_k3_n100_m403_b30_13.cnf,glucose,0.001842,318
csv2 :
formula,entropy,num sols
CBS_k3_n100_m403_b30_13.cnf,0.202,707286
원하는 출력 :
,210formula,solver,runtime,conflicts,entropy,solutions
CBS_k3_n100_m403_b30_13.cnf,SWDiA5BY,0.001842,318,0.202,707286
CBS_k3_n100_m403_b30_13.cnf,glucose,0.001842,318,0.202,707286
그래서 나는 두 개의 사전 (CSV 년대)의 키 사이의 교차 및 사용 지능형리스트
keysA = set(dict1.keys())
keysB = set(dict2.keys())
keys = keysA & keysB
...
[[key] + dict1.get(key, []) + dict2.get(key, []) for key in keys]
을했지만 약간의 '중복'행 (I가 필요로하는) 경우 현장 있다 공식은 동일하지만 필드 해결사이 아닌입니다 내 출력은 다음과 같습니다
formula,solver,runtime,conflicts,entropy,solutions
CBS_k3_n100_m403_b30_13.cnf,SWDiA5BY,0.001842,318,0.202,707286
가 어떻게 지능형리스트를 사용하는 행을 유지할 수 있습니다? 또는 다른 방법
에 도움
편집을 주셔서 감사합니다 - 예를 들어 당신이 판다를 사용하지 않는 이유는
귀하의 질문이 명확하지 않습니다. 이러한 "중복 행"은 모두 ** solver **가있는 유일한 파일 인 csv1에 있습니까? 어떻게하면 중복 행을 처리 할 수 있을까요? 각 키에 대해 하나의 값만 가질 수 있지만 그 값은 목록 일 수 있습니다. 각 ** 수식 **에 대한 값 목록을 원하십니까? 데이터의 예와 해당 데이터에서 원하는 결과를 보여 주어야합니다. –