Pandas 중복 제거 방법 공개: 빠르고 효율적인 데이터 중복 제거 방법에는 특정 코드 예제가 필요합니다.
데이터 분석 및 처리 과정에서 데이터 중복이 자주 발생합니다. 중복된 데이터는 분석 결과를 오도할 수 있으므로 중복 제거는 매우 중요한 단계입니다. 강력한 데이터 처리 라이브러리인 Pandas는 데이터 중복 제거를 달성하기 위한 다양한 방법을 제공합니다. 이 기사에서는 일반적으로 사용되는 중복 제거 방법을 소개하고 특정 코드 예제를 첨부합니다.
가장 일반적인 상황은 특정 열의 값이 반복되는지 여부를 기준으로 중복 제거하는 것입니다. Pandas에서는 .duplicated()
메서드를 사용하여 특정 열의 값이 중복되는지 확인한 후 .drop_duplicates()
메서드를 사용하면 됩니다. 중복된 값을 제거합니다. .duplicated()
方法来判断某一列的值是否重复,然后使用.drop_duplicates()
方法来去除重复值。
例如,我们有一个包含了学生信息的DataFrame,其中有一个列是学生的学号,我们希望根据学号去除重复的行:
import pandas as pd data = {'学号': [1001, 1002, 1003, 1002, 1004, 1003], '姓名': ['张三', '李四', '王五', '李四', '赵六', '王五'], '年龄': [18, 19, 20, 19, 21, 20]} df = pd.DataFrame(data) df.drop_duplicates(subset='学号', inplace=True) print(df)
运行结果:
学号 姓名 年龄 0 1001 张三 18 1 1002 李四 19 2 1003 王五 20 4 1004 赵六 21
这样就去除了学号重复的行,只保留了第一次出现的行。
有时候我们需要根据多个列的值是否重复来进行去重。在.drop_duplicates()
方法中可以通过subset
参数指定要根据哪些列进行去重。
例如,我们还是使用上面的学生信息的DataFrame,现在根据学号和姓名去除重复的行:
import pandas as pd data = {'学号': [1001, 1002, 1003, 1002, 1004, 1003], '姓名': ['张三', '李四', '王五', '李四', '赵六', '王五'], '年龄': [18, 19, 20, 19, 21, 20]} df = pd.DataFrame(data) df.drop_duplicates(subset=['学号', '姓名'], inplace=True) print(df)
运行结果:
学号 姓名 年龄 0 1001 张三 18 1 1002 李四 19 2 1003 王五 20 4 1004 赵六 21
这样就根据学号和姓名同时去除了重复的行。
有时候我们希望根据整个DataFrame的所有列的值是否重复来进行去重。可以使用.duplicated()
方法的keep
参数设置为False
,则会标记所有重复的行。然后使用.drop_duplicates()
import pandas as pd data = {'学号': [1001, 1002, 1003, 1002, 1004, 1003], '姓名': ['张三', '李四', '王五', '李四', '赵六', '王五'], '年龄': [18, 19, 20, 19, 21, 20]} df = pd.DataFrame(data) df.drop_duplicates(keep=False, inplace=True) print(df)실행 결과:
学号 姓名 年龄 0 1001 张三 18 4 1004 赵六 21이렇게 하면 중복된 학생 번호가 제거됩니다. 행의 경우 해당 행의 첫 번째 항목만 유지됩니다.
때로는 여러 열의 값이 반복되는지 여부를 기반으로 중복 제거를 수행해야 하는 경우가 있습니다. .drop_duplicates()
메서드에서 subset
매개변수를 사용하여 중복 제거에 사용할 열을 지정할 수 있습니다.
예를 들어 위의 학생 정보 DataFrame을 계속 사용하고 이제 학생 ID와 이름을 기준으로 중복 행을 제거합니다.
rrreee🎜실행 결과: 🎜rrreee🎜이런 방식으로 학생 ID와 이름을 기준으로 중복 행이 제거됩니다. 동시에. 🎜.duplicated()
메서드를 사용하여 keep
매개변수를 False
로 설정하면 모든 중복 행이 표시됩니다. 그런 다음 .drop_duplicates()
메서드를 사용하여 이러한 중복 행을 제거합니다. 🎜🎜예를 들어 위의 학생 정보 DataFrame을 계속 사용하고 이제 전체 DataFrame의 모든 열을 기반으로 중복 행을 제거합니다. 🎜rrreee🎜실행 결과: 🎜rrreee🎜이렇게 하면 전체 DataFrame의 모든 중복 행이 제거됩니다. . 🎜🎜요약: 🎜🎜이 기사에서는 Pandas에서 일반적으로 사용되는 세 가지 중복 제거 방법, 즉 단일 열 기반 중복 제거, 여러 열 기반 중복 제거, 모든 열 기반 중복 제거를 소개합니다. 중복 데이터를 빠르고 효율적으로 제거하려면 실제 필요에 따라 적절한 방법을 선택하십시오. 실제 적용에서 이러한 방법은 특정 데이터에 따라 유연하게 사용될 수 있으며 데이터 처리 및 분석의 효율성을 향상시켜야 합니다. 🎜🎜위 내용은 이 기사의 전체 내용입니다. 독자들이 이 내용을 통해 데이터 중복 제거에 Pandas를 더 잘 적용할 수 있기를 바랍니다. 🎜위 내용은 Pandas의 효율적인 데이터 중복 제거 방법 공개: 중복 데이터를 빠르게 제거하는 팁의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!