다음과 같은 데이터 프레임이 있습니다.
ID, Name, SchoolID, Grade, Major
1, Alice, School_1, 10, Physics
2, Bob, School_1, 8, Biology
3, Alice, School_2, 10, Physics
4, Alice, School_1, 10, Physics
각 학교에서 중복 된 목록을 찾으려면 어떻게해야합니까? (같은 학교에 이름, 학년, 전공이 같은 목록은 중복 된 것으로 간주됩니다.)
예상 결과:
ID, Name, SchoolID, Grade, Major, Is_duplicated
1, Alice, School_1, 10, Physics, Yes
2, Bob, School_1, 8, Biology, No
3, Alice, School_2, 10, Physics, No
4, Alice, School_1, 10, Physics, Yes
감사합니다.
및 매개 변수 DataFrame.duplicated
와 함께 사용 :keep=False
subset
df['Is_duplicated'] = df.duplicated(keep=False, subset=['Name','Grade','Major','SchoolID'])
print (df)
ID Name SchoolID Grade Major Is_duplicated
0 1 Alice School_1 10 Physics True
1 2 Bob School_1 8 Biology False
2 3 Alice School_2 10 Physics False
3 4 Alice School_1 10 Physics True
원하는 경우 Yes
및 No
추가 numpy.where
:
mask = df.duplicated(keep=False, subset=['Name','Grade','Major','SchoolID'])
df['Is_duplicated'] = np.where(mask, 'Yes', 'No')
print (df)
ID Name SchoolID Grade Major Is_duplicated
0 1 Alice School_1 10 Physics Yes
1 2 Bob School_1 8 Biology No
2 3 Alice School_2 10 Physics No
3 4 Alice School_1 10 Physics Yes
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다