村長今天跟大家簡單分享一下如何在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)
好了,今天的分享就先到這裡吧,學習有點累了,下面插播一則廣告提提神,感興趣的朋友可以了解一下!