金秋十月跳槽季 ——為你解答大資料&資料分析行業10個常見面試題
“金秋十月,盡情揮灑”,國慶節又快要到了,各大企業招聘旺季還在如火如荼地進行著,期盼了好久的7天國慶長假,你是不是打算來場說走就走的旅行,在這之前,也勇敢地進行了一次說走就走的辭職,想給自己全新的開始。想進入或轉行到大資料或資料分析領域的朋友們,戳進來好好看看,2018年大資料&資料分析行業的面試機密吧,我親自為你解答!
為了幫助更多即將進入資料分析行列或大資料領域的朋友找到更好更適合自己的工作,CDA資料分析研究院分享了一份2018年10個常見大資料&資料分析面試題合集,既有基本的業務分析面試題,也有高階資料探勘演算法試題,更有分析工具應用試題來指導你準備面試,試題均附有答案。
Q1:說明資料分析挖掘的基本流程。
- 定義問題,獲取資料
- 資料儲存和提取,結合相關業務知識理解資料
- 資料清洗,整合與檢查資料,缺失值和異常值處理
- 資料預處理,特徵工程
- 資料建模與分析
- 資料視覺化 Q2:說明相關分析、迴歸分析的聯絡和區別。 A2:聯絡:二者都是對變數之間不嚴格依存關係的分析,在理論基礎和方法上具有一致性。只有存在相關關係的變數才能進行迴歸分析,相關程度越高,迴歸分析的結果越可靠。 區別:相關分析研究的是變數之間的依存關係,這些變數的地位相等,不區分主從因素或因果關係。迴歸分析卻是在控制或給定一個(或多個)變數條件下來觀察對應的某一變數的變化,給定的變數為自變數,被觀察的變數為因變數。因此迴歸分析中必須根據研究目的來確定自變數和因變數。 相關關係主要測定的是變數之間關係的密切程度,迴歸分析則著重於變數之間的具體變數關係,通過建立迴歸模型,控制或給定自變數進行估計和預測。
Q3:分別簡述基於內容推薦演算法和基於使用者的協同過濾推薦演算法的原理。 A3:基於內容推薦演算法:基於物品或內容的特徵,發現物品之間的相似性,然後基於使用者以前的喜好記錄推薦給使用者相似的物品。本質是對物品或內容進行分析建立特徵,基於使用者對什麼特徵的內容感興趣以及分析一個物品具備什麼特徵來做推薦。不考慮使用者之間的關係,只關注物品本身的特徵,根據Item獲得與之特徵相似的Item進行推薦。簡單來說就是根據使用者之前喜歡的物品,通過對特徵的匹配分析,預測使用者的喜好。 基於使用者的協同過濾推薦演算法:尋找與目標使用者有相同喜好的鄰居,然後根據鄰居的喜好向目標使用者進行推薦。基本原理就是利用使用者訪問行為的相似性來推薦使用者可能感興趣的資源。根據使用者-物品的評分矩陣,計算使用者的相似度,根據相似使用者的喜好進行推薦。主要關注User與Item之間的關聯,與具體Item本身的特徵沒有關係,基於相似使用者會喜歡相似物品的假設進行推薦。簡單來說就是根據和某一使用者有相似喜好的其他使用者的喜好,從而預測該使用者對物品的可能喜好。 差別在於:協同過濾必須要有使用者行為,基於內容的推薦不考慮使用者行為。冷啟動階段只能用基於內容的推薦,因為沒有使用者行為資料,積累一段時間使用者行為資料後才可以使用協同過濾。 從用途上來說,協同過濾適合給使用者帶點新鮮感的使用場景,如“逛”淘寶的使用者;而基於內容推薦更適合使用者焦點比較集中的使用場景,如垂直領域的內容推送。
Q1-Q3主要考察應聘者對資料分析方法、流程和演算法的理解及應用能力。
Q4:A員工12月份總績效得分為90分,已知:總績效得分在60分以下時,績效工資為0元,60-80分時,績效工資為80元,80-100分時,績效工資為100元。請用Excel函式判斷A員工的績效工資。 A4:=IF(A<60,0,IF(A<80,80,100))
Q5:列出你知道的Excel函式,並簡要介紹使用方法。 A5:Excel常用的函式有: SUM求和函式、AVERAGE求平均值函式,COUNT計數函式、IF邏輯判斷函式、NOW日期時間的無參函式、VLOOKUP查詢引用函式,ISNUMBER判斷是否為數字函式,SUMIFS多條件求和函式等等。
Q4、Q5主要考察業務資料分析師使用Excel處理輕量資料進行業務分析的能力。
Q6:用SQL刪除表A中欄位B=“b”的重複記錄。 A6:delete from A where B in (select B from A having count(B)>1 and B=’b’);
Q7:現有兩張表,A表:id,學號,姓名,年齡。B表:學號,語文,數學。用SQL查詢語文和數學分數都大於80的同學姓名。 A7:select 姓名 from A where 學號 in (select 學號 from B where 語文>80 and 數學>80);
Q6、Q7主要考察SQL語法,應聘者對資料庫的基本操作能力。
Q8:用Python實現以下程式:檢測使用者輸入的手機號碼是否合法。 A8: import datetime #encoding:utf-8 #這是一個用來檢測使用者輸入手機號碼是否合法的小指令碼。 def phonecheck(s): #號碼字首,如果運營商啟用新的號段,只需要在此列表將新的號段加上即可。 phoneprefix=[‘130’,‘131’,‘132’,‘133’,‘134’,‘135’,‘136’,‘137’,‘138’,‘139’,‘150’,‘151’,‘152’,‘153’,‘156’,‘158’,‘159’,‘170’,‘183’,‘182’,‘185’,‘186’,‘188’,‘189’] #檢測號碼是否長度是否合法。 if len(s) != 11: return(“The length of phonenum is 11.”) else: if s.isdigit():#檢測輸入的號碼是否全部是數字。 if s[:3] in phoneprefix: #檢測字首是否是正確。 return(“The phone num is valid.”) else: return(“The phone num is invalid.”) else: return(“The phone num is made up of digits.”) if name==“main”: phonenum=input(“Input your phone num:”) valid=phonecheck(phonenum) nowTime=datetime.datetime.now().strftime(’%Y-%m-%d %H:%M:%S’)#現在 if (valid == ‘The phone num is valid.’): print(nowTime,phonenum[0:3],phonenum[3:7],phonenum[7:],sep=’ ') else: print(‘The phone num is invalid.’)
Q9:請寫一個Python邏輯,計算一個檔案中的大寫字母數量。 A9: import os os.chdir(‘C:\Users\lifei\Desktop’) with open(‘Today.txt’) as today: count=0 for i in today.read(): if i.isupper(): count+=1 print(count)
Q8、Q9主要考察應聘者的Python基礎程式設計能力。 Q10:邏輯思維題:小王、小張、小趙三個人是好朋友,他們中間其中一個人下海經商,一個人考上了重點大學,一個人參軍了。此外他們還知道以下條件:小趙的年齡比士兵的大;大學生的年齡比小張小;小王的年齡和大學生的年齡不一樣。請推出這三個人中誰是商人?誰是大學生?誰是士兵? A10:小趙的年齡比士兵的大,趙是商人或是學生。 學生的年齡比小張大,小張不是學生,張是商人或是士兵。 小王的年齡和大學生的不一樣,小王不是學生,王是商人或是士兵。 王和張都不是學生,那麼趙就是學生了。 小趙的年齡比士兵大,大學生的年齡比小張小,小張比小趙大,而小趙比士兵大,那麼小王是士兵,小張是商人。
Q10考察應聘者的邏輯思維能力,是否具備從海量資料中挖掘有趣關係的分析思維。
資料小白在謀求一份資料分析工作前,必須熟知資料分析的基礎知識。除了上文提到的相關知識,一名合格的資料分析師還應該掌握相關的行業動態,能夠敏銳的把握資料背後的潛在規律,為業務發展做出正確指導和決策。 整裝待發,以待來日!黃金招聘季,你準備好如何脫穎而出了嗎?