為一名合格的數據分析師或者說一名稱職的數據挖掘領域從業者,大家肯定都耳熟能詳的認為其必須具有如下基本技能:
** 一、熟練的掌握SQL、Hive等; **
** 二、R、SAS、Python等至少精通其中一種。 **
但往往大家忽視了最基本的技能要求:使用Excle進行數據處理與數據分析的能力。大家可以仔細回想下自己公司里面,excel玩的很6的人絕對不是數據部門的人,而往往是業務部門或財務部門的同事。Excel作為數據分析工具,可以分為兩大部分,一是Excel的數據處理能力,一是Excle的高級數據分析能力。在小數據量下(注:大數據量下會存在處理效率的問題),Excel完全可以像R、SAS等統計軟件進行假設檢驗、相關分析、回歸分析等數據分析與數據建模工作,這就是Excel的高級數據分析功能。本文作為Excel使用介紹的開篇,先和大家一起分享Excel的高級數據處理方法。
一
** 利用Vlookup函數進行數據查找 **
在分享這個函數前,我們先來思考如下一個案例:
** 【案例1.1 】 ** 假設所得稅的稅率如下圖1.1區域所示。其中的含義是:
0~500的稅率為0%,
500~1000的稅率為1%,
1000~1500的稅率為3%
……,4000以上的稅率為20%
問題:根據職工收入如何快速計算每位職工應繳的所得稅?
圖1.1 工資所得稅計算
計算所得稅的關鍵就在於根據收入找到其對應的所得稅率。肯定有同學會說,這個簡單,直接使用if函數就可以很方便的解決。誠然,if函數確實可以解決這個問題,但實際操作起來的時候,你會發現需要嵌套多個if函數方可。如果分段較多的話,if函數進行操作很不方便,因為很可能到最后你都不記得到底嵌套了多少層if函數。對於這個問題,Vlookup函數可以快速便捷的解決。
** Vlookup函數講解 **
** 功能 ** ** **
V lookup按 列查找 的方式從指定數據表區域的 最左列 查找特定數據,它能夠返回查找區域中與找到單元格位於 相同行不同列 的單元格內容
。
** 格式 ** ** **
Vlookup (x, table, n, f)
其中,x是要查找的值;table是一個單元格區域;n中table區域中要返回的數據所在列的序號。n=1時,返回 table 第1列中的數值;n=2時,返回
table 第2列中的數值;以此類推。f是一個邏輯值,表示查找的方式。 當其為 true(或1) 時,表示 模糊 查找;當它為 false(或0)
時,表示 精確 查找。
**
**
** 說明 **
Vlookup函數在table區域的第1列中查找值為x的數值,如果找到,就返回與找到數據同行第n列單元格中的數據。當f為true時,table的第1列數據必須按升序排列,否則找不到正確的結果;當f為false時,table的第1列數據不需要排序。
**
**
** 注意 **
①如果Vlookup函數找不到x,且f=true,則返回小於等於x的最大值。
②如果x小於table第1列中的最小值,Vlookup函數返回錯誤值“#N/A”。
③如果Vlookup函數找不到x且f=FALSE,Vlookup函數返回錯誤值“#N/A”。
案例講解
** (1)用Vlookup進行模糊查找 **
前面一開頭提出的計算所得稅那個問題,就可以使用Vlookup的模糊查找進行完美解決(具體方法見圖1.2)。
圖1.2 Vlookup進行模糊查找
** (2)用Vlookup進行精確查找 **
精確查找就是指查找數據完全匹配的查找,Vlookup函數具有此項功能。在大表中查找特定數據,或查找不同工作表中的數據,特別是工作表數據較多,
Vlookup函數顯得非常有效。
【 案例1.2
】某校某專業期末考試的數據庫成績表如圖的A:H列所示。由於人數較多,要查看某個同學的成績非常困難。希望能按學號進行查找,即在K5輸入某個學號后,就能自動顯示出該學號所對應的姓名和各種成績,如圖1.3的J4:M16所示。
圖1.3 個人成績查詢
** 案例解決方法如下: ** ** **
(1)在M5中輸入公式:=VLOOKUP(K5,A5:H227,2,0)
(2)在L6中輸入公式:=VLOOKUP(K5,A5:H227,3,0)
(3)在L7中輸入公式:=VLOOKUP(K5,A5:H227,4,0)
(4)在L9中輸入公式:=VLOOKUP(K5,A5:H227,5,0)
(5)在L11中輸入公式:=VLOOKUP(K5,A5:H227,6,0)
(6)在L13中輸入公式: =VLOOKUP(K5,A5:H227,7,0)
(7)在L15中輸入公式: =VLOOKUP(K5,A5:H227,8,0)
二
Index和Match相結合查詢數據的方法
一、Index和Match相結合查詢數據的方法
一、Index和Match相結合查詢數據的方法
一、Index和Match相結合查詢數據的方法
一、Index和Match相結合查詢數據的方法
一、Index和Match相結合查詢數據的方法
同樣,在了解Index和Match函數前,我們先來思考如下一個案例。
【 案例2.1
】某地域中各縣的蔬菜銷售單價表如圖2.1的A4:J18區域所示,希望能夠快捷地查找到某地某蔬菜的單價。最好是輸入地名和蔬菜名,就能看到對應的蔬菜單價,如圖2.1的B1:D3區域所示。
圖2.1 蔬菜單價查詢
對於這種二維查找的問題,像前面的vlookup函數或者大家熟悉的lookup函數是不能做到的,這時候就需要match函數和Index函數結合起來使用了。用一句簡單話來講,macth函數主要職責就在於定位,Index函數主要職責就在於根據match提供的位置信息去指定區域“抓人”(取數)。Index函數和Match函數這兩個搭檔,就很像狙擊手里面第一狙擊手和第二狙擊手,一個負責定位和觀察,一個負責精准狙擊。
Match函數使用講解
Match函數提供了比lookup(或Vlookup、Hlookup)函數更多的靈活性,它可以在工作表的一行(或一列)中進行數據查找,並返回數據在行(或列)中的位置。
如果需要找出數據在某行(或某列)的位置,就應該使用Match函數而不是Lookup函數。
在多數情況下,Match函數的結果並不是所需要的最終答案,而是作為lookup(Vlookup,Hlookup)的第3個參數或作為Index函數的參數。
** Match ** ** 格式 ** ** **
Match ( x, r,f )
其中x是要查找的數值,r可以是一個數組常量,或某列(或行)連續的單元格區域,其中可能包含有要查找的x。f用於指定match的查找方式,它可以是-1,0或1。
** 功能 ** ** **
Match(x,r,f)表示的意思是:在數組或連續的單元格區域r中查找x,並返回x在r中的位置編號。
當f為0是,match進行精確查找,當f為1(或-1)時,match進行模糊查找。
** 說明 ** ** **
f=-1時,r必須按降序排列,查找大於或等於 x的最小數值
f=0時,r 不必排序,查找等於x的第一個數值
f=1時,r必須按升序排列,查找小於或等於x的最大數值
** Index函數使用講解 **
** 格式 ** ** **
Index(Area,r,c,n)
其中,Area是1個或多個單元格區域;r是某行的行序號,c是某列的列序號,該函數返回指定的行與列交叉處的單元格引用。如果r等於0,則返回整行單元格引用,如果c等於0,則返回整列單元格引用。
當Area包括多個單元格區域時,n=1就表示結果來自於Area中的第1個區域,n=2表示結果來源於第2個單元格區域……。如果省略n表示結果來源於第1個單元格區域。
** 功能 ** ** **
Index(Area,r,c,n)的功能是返回Area中第n個單元格區域中的r行,c列交叉處的單元格引用。
** > > > > ** **** 案例講解 ** **
前面提到的案例2.1,利用Index和Match函數結合起來可以很快速的進行解決,如下圖2.2。
圖2.2 蔬菜單價查詢
** 三 **
** D函數查詢數據的方法 **
如果能把Excel里面某個區域里面的數據看成是數據庫中一張表,在Excel里面對數據進行數據庫里面SQL一樣的操作該多好。
在Excel中,數據庫是指每列數據都有標題的數據表。Excel提供大約12個專用數據庫函數來簡化這種數據表的數據統計和數據查找工作,這些函數都以D開頭,所以也稱為
D函數 。
D函數有相同的調用形式,相同參數表,格式如下:
**
**
** Dname(database,field,criteria) **
其中的Dname是函數名,它可以是Dsum、Daverage、Dget、Dcount、Dcounta、Dmax、Dmin等。各函數的功能如其名字所示,Dsum求總和,Daverage求平均數,Dget查找數據,Dcount統計數字個數,Dcounta統計文本和數據的個數,Dmax求最大數,Dmin求最小數。
database是一個單元格區域,要求該區域中的每列數據都必須有標題;field是database區域中某列數據的列標題(稱為字段,出現在字符串中);criteria稱為條件區域,它與高級篩選條件區域的含義和構造方法完全相同。
【 案例3.1
】某校某專業共有224名學生,某次期末考試的“數據庫系統應用”課程的成績表如圖所示。現在要查找每位學生的成績,希望輸入學號后,就能夠得到該生的各種詳細數據,如圖3.1的J1:M8區域所示。此外,還希望對各班的考試情況進行簡單的統計分析,能夠隨時查看各班的考試人數,最高成績,高低成績,及缺考人數等,如圖3.1的J10:N17區域所示。
圖3.1 班級成績分析
對於對各班的考試情況進行簡單的統計分析,如果是在數據庫里面,就是一段簡單的SQL代碼,如統計上機平均成績:
select avg(上機成績)
from database
where 班級=’0320302’;
在Excel里面,這個就可以借助D函數實現異曲同工之效。
** 案例3.1解決方案如下: **
(1)在K13中輸入計算上機平均成績的公式:
=DAVERAGE(A4:H227,"上機成績",J12:J13)
(2)在M13輸入計算綜合平均成績的公式:
=DAVERAGE(A4:H227,"綜合成績",J12:J13)
(3)在K15輸入計算缺考人數的公式:
=DCOUNTA(A4:H227,"期末考試成績",J12:J13)-DCOUNT(A4:H227,"期末考試成績",J12:J13)
(4)在M15輸入計算最高成績的公式:
=DMAX(A4:H227,"期末考試成績",J12:J13)
(5)在K17輸入計算最低成績的公式:
=DMIN(A4:H227,"期末考試成績",J12:J13)
(6)在M17輸入計算考試人數的公式:
=DCOUNT(A4:H227,"淘汰率為4%下的成績",J12:J13)
** 結束語: **
本文主要參考杜茂康老師編寫的《Excel與數據處理(第3版)》,有興趣的同學可以購買此教材進行更深入的Excel學習。
作者: 甘華來; 轉自:眾安數盟;
** END **
** 版權聲明:本號內容部分來自互聯網,轉載請注明原文鏈接和作者,如有侵權或出處有誤請和我們聯系。 **
關聯閱讀:
** 原創系列文章: **
** [ 1:從0開始搭建自己的數據運營指標體系 ** **
** [ 2 :從0開始搭建自己的數據運營指標體系(定位篇)
** [ 3 :從0開始搭建自己的數據運營體系(業務理解篇)
**[ 4 :數據指標的構建流程與邏輯
5 : **[ 系列 :從數據指標到數據運營指標體系
**
6: **** [ 實戰 :為自己的公號搭建一個數據運營指標體系
7: **** **[ 從0開始搭建自己的數據運營指標體系(運營活動分析)
**
** 數據運營 關聯文章閱讀: **
[ 運營入門,從0到1搭建數據分析知識體系
[ 推薦 :數據分析師與運營協作的9個好習慣
[ 干貨 :手把手教你搭建數據化用戶運營體系
[ 推薦 :最用心的運營數據指標解讀
[ 干貨 : 如何構建數據運營指標體系
[ 從零開始,構建數據化運營體系
[ 干貨 :解讀產品、運營和數據三個基友關系
[ 干貨 :從0到1搭建數據運營體系
數據分析、數據產品 關聯文章閱讀:
[ 干貨 :數據分析團隊的搭建和思考
[ 關於用戶畫像那些事,看這一文章就夠了
[ 數據分析師必需具備的10種分析思維。
[ 如何構建大數據層級體系,看這一文章就夠了
[ 干貨 : 聚焦於用戶行為分析的數據產品
[ 如何構建大數據層級體系,看這一文章就夠了
[ 80%的運營注定了打雜?因為你沒有搭建出一套有效的用戶運營體系
[ 從底層到應用,那些數據人的必備技能
[ 讀懂用戶運營體系:用戶分層和分群
[ 做運營必須掌握的數據分析思維,你還敢說不會做數據分析