두 개의 큰 데이터 청크가 있으며 두 개의 공통 열이 함께 묶입니다. 하나는 다른 하나의 서브 세트 여야하지만, 병합을 수행 할 때 최종 제품은 서브 세트보다 작기 때문에 원본의 행과 서브 세트의 행을보고 싶습니다. 왜 제대로 병합에 실패했는지. 그것은 업스트림 스크립트에서 아마도 약간의 오류 일지 모르지만, 나의 newbie pandas 사용에는 오류가있을 수 있습니다.병합 결과에 DataFrame의 어떤 행이 없음을 판별하는 "판다"방법이 있습니까?
두 데이터 집합의 값을 반복하고 병합되지 않은 데이터를 찾는 명백한 방법이 있지만이를 수행하는 데 "판다"방법이 있다고 가정하고 있습니다. .
chip_raw= pandas.read_csv(filename, names=["CHROM", "POS", "GT", "score", "rsid"], sep=" ")
seq_data= pandas.read_csv(seq_filename, names=["CHROM", "POS", "vcf_gt", "gq"], sep="\t")
merged = pandas.merge(chip_raw, seq_data, on=["CHROM", "POS"], how="inner")
데이터가 서로 어떻게 관련되는지 예를 보여주기 위해 편집했습니다. 나는 CHROM과 POS에 고유하게 묶여있는 chip_raw에 GT, score, rsid를 가지고있다.이 두 열은 함께 유일성을 나타낸다. 그렇다면 다른 파일에서 온 vcf_gt와 gq가 있습니다. 나는 병합되지 않은 chip_raw에 무엇이 있는지보고 싶다. seq_data/merged에 대해서도 같다.
팬더를 배우고 있기 때문에 팬더를 사용하는 것에 대해 궁금해합니다. 라이브러리가 각 항목을 반복하고 현재 병합되어 있는지 확인하는 것보다 효율적으로 수행 할 것으로 보입니다.
일부 데이터와 문제를 설명하는 코드 샘플을 보여주십시오. –