Excel是我們工作中經常使用的一種工具,對於數據分析來說,這也是處理數據最基礎的工具。很多傳統行業的數據分析師甚至只要掌握Excel和SQL即可。
對於初學者,有的時候並不需要急於苦學R語言等專業工具(當然會也是加分項),因為Excel涵蓋的功能足夠多,也有很多統計、分析、可視化的插件。只不過我們平時處理數據的時候很多函數都不知道怎麼用。
關於Excel的進階學習,主要分為兩塊:一個是數據分析常用的Excel函數,另一個分享用Excel做一個簡單完整的分析。
這篇文章主要介紹數據分析常用的43個Excel函數及用途,實戰分析將在下一篇講解。
關於函數:
Excel的函數實際上就是一些複雜的計算公式,函數把複雜的計算步驟交由程序處理,只要按照函數格式錄入相關參數,就可以得出結果。如求一個區域的和,可以直接用SUM(A1:C100)的形式。
所以對於函數,不用刻意記刻意背,只要知道比如「選取欄位,用Left/Right/Mid」函數,並且需要哪些參數怎麼用就行了,複雜的就交給萬能的百度吧。
函數分類:
關聯匹配類
清洗處理類
邏輯運算類
計算統計類
時間序列類
經常性的,需要的數據不在同一個excel表或同一個excel表不同sheet中,數據太多,copy麻煩也不準確,如何整合呢?這類函數就是用於多表關聯或者行列比對時的場景,而且表越複雜,用得越多。
函數HLOOKUP和VLOOKUP都是用來在表格中查找數據。
1、VLOOKUP
功能:用於查找首列滿足條件的元素。
語法:=VLOOKUP(要查找的值,要在其中查找值的區域,區域中包含返回值的列號,精確匹配或近似匹配 – 指定為 0/FALSE 或 1/TRUE)。
(舉例:查詢F5單元格中的員工姓名是什麼職務)
2、HLOOKUP
功能:搜索表的頂行或值的數組中的值,並在表格或數組中指定的行的同一列中返回一個值。
語法:=VLOOKUP(要查找的值,要在其中查找值的區域,區域中包含返回值的行號,精確匹配或近似匹配 – 指定為 0/FALSE 或 1/TRUE)。
區別:HLOOKUP返回的值與需要查找的值在同一列上,而VLOOKUP返回的值與需要查找的值在同一行上。
3、INDEX
功能:返回表格或區域中的值或引用該值。
語法:= INDEX(要返回值的單元格區域或數組,所在行,所在列)
4、MATCH
功能:用於返回指定內容在指定區域(某行或者某列)的位置。
語法:= MATCH (要返回值的單元格區域或數組,查找的區域,查找方式)
5、RANK
功能:求某一個數值在某一區域內一組數值中的排名。
語法:=RANK(參與排名的數值, 排名的數值區域, 排名方式-0是降序-1是升序-默認為0)。
6、Row
功能:返回單元格所在的行
7、Column
功能:返回單元格所在的列
8、Offset
功能:從指定的基準位置按行列偏移量返回指定的引用
語法:=Offset(指定點,偏移多少行,偏移多少列,返回多少行,返回多少列)
數據處理之前,需要對提取的數據進行初步清洗,如清除字符串空格,合併單元格、替換、截取字符串、查找字符串出現的位置等。
9、Trim
功能:清除掉字符串兩邊的空格
10、Rtrim
功能:清除單元格右邊的空格
11、Ltrim
功能:清除單元格左邊的空格
12、concatenate
語法:=Concatenate(單元格1,單元格2……)
合併單元格中的內容,還有另一種合併方式是&,需要合併的內容過多時,concatenate效率更快。
13、Left
功能:從左截取字符串
語法:=Left(值所在單元格,截取長度)
14、Right
功能:從右截取字符串
語法:= Right (值所在單元格,截取長度)
15、Mid
功能:從中間截取字符串
語法:= Mid(指定字符串,開始位置,截取長度)
(舉例:根據身份證號碼提取年月)
16、Replace
功能:替換掉單元格的字符串
語法:=Replace(指定字符串,哪個位置開始替換,替換幾個字符,替換成什麼)
17、Substitute
和replace接近,不同在於Replace根據位置實現替換,需要提供從第幾位開始替換,替換幾位,替換後的新的文本;而Substitute根據文本內容替換,需要提供替換的舊文本和新文本,以及替換第幾個舊文本等。因此Replace實現固定位置的文本替換,Substitute實現固定文本替換。
(舉例:替換部分電話號碼)
18、Find
功能:查找文本位置
語法:=Find(要查找字符,指定字符串,第幾個字符)
19、Search
功能:返回一個指定字符或文本字符串在字符串中第一次出現的位置 ,從左到右查找
語法:=search(要查找的字符,字符所在的文本,從第幾個字符開始查找)
Find和Search這兩個函數功能幾乎相同,實現查找字符所在的位置,區別在於Find函數精確查找,區分大小寫;Search函數模糊查找,不區分大小寫。
20、Len
功能:文本字符串的字符個數
21、Lenb
功能:返回文本中所包含的字符數
(舉例:從A列姓名電話中提取出姓名)
22、IF
功能:使用邏輯函數 IF 函數時,如果條件為真,該函數將返回一個值;如果條件為假,函數將返回另一個值。
語法:=IF(條件, true時返回值, false返回值)
23、AND
功能:邏輯判斷,相當於「並」。
語法:全部參數為True,則返回True,經常用於多條件判斷。
24、OR
功能:邏輯判斷,相當於「或」。
語法:只要參數有一個True,則返回Ture,經常用於多條件判斷。
在利用excel表格統計數據時,常常需要使用各種excel自帶的公式,也是最常使用的一類。重要性不言而喻。不過excel都自帶快捷功能。
MIN函數:找到某區域中的最小值
MAX函數:找到某區域中的最大值
AVERAGE函數:計算某區域中的平均值
COUNT函數: 計算某區域中包含數字的單元格的數目
COUNTIF函數:計算某個區域中滿足給定條件的單元格數目
COUNTIFS函數:統計一組給定條件所指定的單元格數
SUM函數:計算單元格區域中所有數值的和
SUMIF函數:對滿足條件的單元格求和
SUMIFS函數:對一組滿足條件指定的單元格求和
SUMPRODUCT函數:返回相應的數組或區域乘積的和
25、MIN
功能:找到某區域中的最小值
26、MAX函數
功能:找到某區域中的最大值
27、AVERAGE
功能:計算某區域中的平均值
28、COUNT
功能:計算含有數字的單元格的個數。
29、COUNTIF
功能:計算某個區域中滿足給定條件的單元格數目
語法:=COUNTIF(單元格1: 單元格2 ,條件)
比如=COUNTIF(Table1!A1:Table1!C100, 「YES」 ) 計算Table1中A1到C100區域單元格中值為」YES」的單元格個數
(舉例:統計制定店鋪的業務筆數)
30、COUNTIFS
功能:統計一組給定條件所指定的單元格數
語法:=COUNTIFS(第一個條件區域,第一個對應的條件,第二個條件區域,第二個對應的條件,第N個條件區域,第N個對應的條件)
比如:=COUNTIFS(Table1!A1: Table1!A100, 「YES」,Table1!C1: Table1!C100, 「NO」 ) 計算Table1中A1到A100區域單元格中值為」YES」,而且同時C區域值為」NO」的單元格個數
31、SUM
計算單元格區域中所有數值的和
32、SUMIF
功能:求滿足條件的單元格和
語法:=SUMIF(單元格1: 單元格2 ,條件,單元格3: 單元格4)
(舉例:計算一班的總成績)
32、SUMIFS
功能:對一組滿足條件指定的單元格求和
語法:=SUMIFS(實際求和區域,第一個條件區域,第一個對應的求和條件,第二個條件區域,第二個對應的求和條件,第N個條件區域,第N個對應的求和條件)
比如=SUMIFS(Table1!C1:Table1!C100,Table1!A1: Table1!A100, 「YES」 ,Table1!B1:Table1B100, 「NO」 ) 計算Table1中C1到C100區域,同時相應行A列值為」YES」,而且對應B列值為」NO」的單元格的和。
33、SUMPRODUCT
功能:返回相應的數組或區域乘積的和
語法: =SUMPRODUCT(單元格1: 單元格2 ,單元格3: 單元格4)
比如:=SUMPRODUCT(Table1!A1:Table1!A100, Table2!B1Table2!B100) 計算表格1的A1到A100與表格2的B1到B100的乘積和,即A1*B1+A2*B2+A3*B3+…
34、Stdev
統計型函數,求標準差。
35、Substotal
語法:=Substotal(引用區域,參數)
匯總型函數,將平均值、計數、最大最小、相乘、標準差、求和、方差等參數化,換言之,只要會了這個函數,上面的都可以拋棄掉了。
36、Int/Round
取整函數,int向下取整,round按小數位取數。
round(3.1415,2)=3.14 ;
round(3.1415,1)=3.1
專門用於處理時間格式以及轉換。
37、TODAY
返回今天的日期,動態函數。
38、NOW
返回當前的時間,動態函數。
39、YEAR
功能:返回日期的年份。
40、MONTH
功能:返回日期的月份。
41、DAY
功能:返回以序列數表示的某日期的天數。
42、WEEKDAY
功能:返回對應於某個日期的一周中的第幾天。 默認情況下,天數是 1(星期日)到 7(星期六)範圍內的整數。
語法:=Weekday(指定時間,參數)
43、Datedif
功能:計算兩個日期之間相隔的天數、月數或年數。
語法:=Datedif(開始日期,結束日期,參數)
覺得文章有價值,隨手轉發朋友圈!
如果不滿足於自學,想通過體系的視頻課程和實戰業務案例來更快速入門數據分析,提升數據分析業務實操能力,那麼我強烈建議你報名我的《數據分析:10周從入門到進階》課程!這門課程將能幫助大家:
① 系統講解數據分析所需理論知識
② 掌握數據分析的實操流程,快速上手項目
③ 初步掌握數據分析解決問題、提升業務的思路
④ 幫助數據人完成知識、技能和思維的全面入門
掃碼了解課程詳情!