두 개의 Excel 파일이 있습니다. 두 파일 모두 Customer_Name과 Customer_No라는 두 개의 공통 열을 가지고 있습니다. 첫 번째 엑셀 파일은 약 800k 행을 가지고 있고 두 번째 파일은 460만을 가지고 있습니다. 두 파일에 공통 데이터가있는 데이터 프레임을 얻고 싶습니다. 즉, Customer_Name과 Customer_No가 모두있는 첫 번째 파일에서 행을 얻고 싶습니다. 두 번째 파일에 있습니다. 나는 .isin을 사용하여 시도했지만 지금까지 단 하나의 변수 (Column) 만 사용하는 예제를 발견했습니다. 미리 감사드립니다!팬더에서 두 개의 Excel 파일을 비교하고 두 개의 열에 같은 값을 가진 행을 반환합니다.
-2
A
답변
2
사용 merge
: 당신이있는 경우
df = pd.merge(df1, df2, on=['Customer_Name','Customer_No'])
다른 열 이름이 left_on
및 right_on
사용
df = pd.merge(df1,
df2,
left_on=['Customer_Name','Customer_No'],
right_on=['Customer_head','Customer_Id'])
0
IIUC을하고 두 번째 파일에서 여분의 열을 필요로하지 않습니다 - 그것은 사용됩니다 가입하기 만하면 다음과 같이 할 수 있습니다.
common_cols = ['Customer_Name','Customer_No']
df = (pd.read_excel(filename1)
.join(pd.read_excel(filename2, usecols=common_cols),
on=common_cols))
0
본인은 직접적인 방법은 다음과 같이 될 것이라고 생각 : 필요한 경우 DF의 결과에 [인덱스, 행]을 추가처럼
여기df_file1 = pd.read_csv(file1, index_col) # set Customer_No
df_file2 = pd.read_csv(file2, index_col) # set Customer_No
for index, row in df_file1.iterrows():
if row.get_value('Customer_name) in df_file2['Customer_name'].values:
당신은 단순히 정수로, 계산 또는 일부 복잡한 작업을 생성 할 수 있습니다.
관련 문제
- 1. 유닉스 나는 두 개의 파일을 두 개의 파일을 비교하고 라인
- 2. 두 개의 파일을 비교하고 대체
- 3. 두 열에 같은 값을 가진 두 행을 결합하십시오.
- 4. 매크로는 두 개의 서로 다른 열에 두 개의 값을 검색하고
- 5. 두 개의 Excel 파일을 비교하고 키 열을 기준으로 차이를 부여하십시오.
- 6. R은 - 두 개의 데이터 프레임에 연속적으로 행을 비교하고 값을
- 7. 두 개의 값을 비교하고 정렬하는 하둡 돼지
- 8. 두 개의 객체 배열을 비교하고 같은 속성 값을 가진 두 번째 객체의 항목을 제거하십시오.
- 9. 두 개의 파일의 두 열을 비교하고 조건
- 10. SQL에서 두 개의 열을 계산하고 두 개의 행을 만듭니다 (잠재적으로)
- 11. 두 값을 비교하고 두 값 중 가장 큰 값을 반환합니다.
- 12. 두 개의 RichTextBox를 비교하고 있습니까?
- 13. 두 개의 큰 CSV 파일을 비교하고 차이점 파일을 얻는 방법
- 14. MySQL은 두 개의 테이블을 비교하고 다른 기본 필드에서 다른 기본 데이터를 가진 행을 반환합니다.
- 15. Wicket 같은 열에 두 개의 링크가 있습니다
- 16. 두 개의 열을 일치시켜 두 개의 Excel 행을 결합하는 Excel 매크로
- 17. 팬더에서 두 개의 데이터 프레임에서 일반적인 행을 제거하는 방법은 무엇입니까?
- 18. 다른 날짜로하지만 같은 속성을 가진 두 개의 행을 병합
- 19. 나는 다음과 같은 두 개의 문자열이 두 개의 문자열을 비교하고 두 단어가
- 20. 팬더에서 두 개의 데이터 프레임을 병합하는 방법
- 21. 스칼라에서 두 개의 값을 가진 목록 일치
- 22. 같은 이름을 가진 두 개의 필드
- 23. 같은 이름을 가진 두 개의 다른 명령
- 24. 두 개의 열을 그룹화하고 다른 열에 해당 값을 집계하고 두 개의 열에 숫자를 더함
- 25. 키에 의해 사전의 두 목록을 비교하고 내가 같은 키를 가진 두 개의 사전을
- 26. 팬더에서 Groupby가있는 두 개의 열 빼기
- 27. 두 폴더의 내용을 비교하고 두 폴더에있는 같은 이름의 파일을 제거하십시오.
- 28. 팬더에서 두 개의 열이 중복 됨
- 29. 다른 값을 가진 두 개의 PickerViews
- 30. 동일한 값을 가진 두 개의 배열 키
답안을 편집하고 있으므로 확인하십시오. – jezrael
내 대답이 도움이 되었다면 [수락] (http://meta.stackexchange.com/a/5235/295067)을 잊지 마세요. 감사. – jezrael
하지만 대신 KeyError가 나타납니다. 열의 데이터 유형을 확인하고 그 열의 유형도 동일하게 만들었습니다. : – Ruffy26