데이터 프레임 비교 및 차이점 시각화
두 개의 Pandas 데이터 프레임이 주어지면 변경 사항을 식별하고 보여주는 것이 임무입니다. 사용자 친화적인 형식으로 구성됩니다. 목표는 변경된 행을 시각적으로 강조 표시하여 원래 값과 업데이트된 값을 모두 표시하는 HTML 테이블을 출력하는 것입니다.
행 변경 식별
이를 달성하려면, 변경된 행을 확인해야 합니다. 이는 두 데이터프레임의 해당 값이 다른 모든 요소에 대해 부울 마스크를 반환하는 ne(같지 않음) 연산을 활용하여 수행할 수 있습니다.
<code class="python">ne = (df1 != df2).any(1)</code>
수정된 항목 찾기
변경된 행이 식별되면 stack() 함수를 사용하여 수정된 특정 항목을 찾을 수 있습니다. 누적된 결과를 부울 마스크를 기준으로 필터링하면 변경된 항목의 추출이 가능해집니다.
<code class="python">changed = (df1 != df2).stack()[ne_stacked] changed.index.names = ['id', 'col']</code>
변경된 값 추출
다음으로 원본 업데이트된 값은 where 함수를 사용하여 추출할 수 있습니다. 이를 통해 각각 원래 값과 수정된 값을 나타내는 "from" 및 "to" 열을 사용하여 변경 사항을 요약하는 DataFrame을 생성할 수 있습니다.
<code class="python">difference_locations = np.where(df1 != df2) changed_from = df1.values[difference_locations] changed_to = df2.values[difference_locations]</code>
HTML 테이블 생성
마지막으로 추출된 변경 사항을 HTML 테이블로 구성하여 두 데이터 프레임 간의 차이점을 시각화할 수 있습니다. 이 테이블은 Pandas의 to_html 메소드와 같은 HTML 렌더링 엔진으로 렌더링되어 사용자 친화적인 병렬 비교를 제공할 수 있습니다.
<code class="python">pd.DataFrame({'from': changed_from, 'to': changed_to}, index=changed.index).to_html()</code>
위 내용은 Pandas DataFrame을 비교하고 차이점을 시각화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!