村长今天跟大家简单分享一下如何在Excel、SQL和Python中用不同的方法提取不重复值(数据去重)。
一、Excel
1.1、函数法(数组公式)
函数公式:=IFERROR(INDEX(A:A,SMALL(IF(MATCH($A$2:$A$16,$A$2:$A$16,0)=ROW($1:$15),ROW($2:$16),9^9),ROW(A1))),"")
1.2、技巧法(删除重复值)
操作步骤:
选中数据列,然后点击【数据】选项卡,选择“删除重复值”
1.3、技巧法(高级筛选)
操作步骤:
选中数据区域,然后点击【数据】选项卡,选择“高级筛选”,勾选“选择不重复的记录”,选择将筛选的数据复制到指定位置。
1.4、技巧法(数据透视)
操作步骤:
选中数据区域任意一个单元格或整个数据区域,然后点击【插入】选项卡,选择“数据透视表”,勾选“现有工作表”并选择将透视的数据存放到指定位置,勾选“姓名”字段值。
二、数据库(SQL)
2.1、去重复法(DISTINCT去重复)
SQL语句:
SELECT DISTINCT NAME FROM TEST
语句结构:
SELECT DISTINCT 字段名称 FROM 表名称
2.2、取最新数据(rowid属性)
SQL语句:
SELECT NAME,MAX(ROWID) FROM TEST GROUP BY NAME
语句结构:
SELECT 字段名称,MAX(ROWID) FROM 表名称 GROUP BY 字段名称
2.3、分类汇总法(COUNT函数)
SQL语句:
SELECT NAME,COUNT(NAME) FROM TEST GROUP BY NAME
语句结构:
SELECT 字段名称,COUNT(字段名称) FROM 表名称 GROUP BY 字段名称
三、Python
3.1、集合的特性(SET方法)
Python代码:
import pandas as pd
df=pd.DataFrame(pd.read_excel('F:\\test.xlsx'))
df2=list(set(df['NAME']))
print(df2)
3.2、字典(keys方法)
Python代码:
import pandas as pd
df=pd.DataFrame(pd.read_excel('F:\\test.xlsx'))
df2=list({}.fromkeys(df['NAME']).keys())
print(df2)
3.3、循环查找的方式(for循环)
Python代码:
import pandas as pd
df=pd.DataFrame(pd.read_excel('F:\\test.xlsx'))
df2 = []for i in df['NAME']:if i not in df2:
df2.append(i)
print(df2)
好了,今天的分享就先到这里吧,学习有点累了,下面插播一则广告提提神,感兴趣的朋友可以了解一下!