當前位置:
首頁 > 科技 > 7道常見的數據分析面試題

7道常見的數據分析面試題

內容來自極客時間《數據分析實戰 45 講》

數據分析師近幾年在國內互聯網圈越來越火,很多開發都因為薪資和發展前景,希望轉行到數據分析崗。今天,我們就來聊聊面試數據分析師的那些事。

其實,數據分析能力是每個互聯網人的必備技能,哪怕你沒有轉行數據分析師的計劃,也推薦你看看這個專題,提升你的數據能力。

數據分析的能力要求

與數據分析相關的工作有一個特質,就是對數字非常敏感,同時也要求對數據具有良好的思考能力,比如說如何用數據指導業務,如何將數據呈現在報告中。

在面試的時候,面試官通常會考察以下三個維度的能力:

1、理論知識(概率統計、概率分析等)

掌握與數據分析相關的演算法是演算法工程師必備的能力,如果你面試的是和演算法相關的工作,那麼面試官一定會問你和演算法相關的問題。比如常用的數據挖掘演算法都有哪些,EM 演算法和 K-Means 演算法的區別和相同之處有哪些等。

有些分析師的工作還需要有一定的數學基礎,比如概率論與數理統計,最優化原理等。這些知識在演算法優化中會用到。

除此以外,一些數據工程師的工作更偏向於前期的數據預處理,比如 ETL 工程師。這個職位考察你對數據清洗、數據集成的能力。雖然它們不是數據分析的「煉金」環節,卻在數據分析過程中佔了 80% 的時間。

在《數據分析實戰 45 講》里,我有詳細講到數據集成的兩種架構方式:ELT 和 ETL,以及 Kettle 工具的基本操作,非常實用。

以下是我製作的數據集成的學習腦圖。

2、具體工具(sklearn、Python、Numpy、Pandas 等)

工程師一定需要掌握工具,你通常可以從 JD 中了解一家公司採用的工具有哪些。如果你做的是和演算法相關的工作,最好還是掌握一門語言,Python 語言最適合不過,還需要對 Python 的工具,比如 Numpy、Pandas、sklearn 有一定的了解。

數據 ETL 工程師還需要掌握 ETL 工具,比如 Kettle。

如果是數據可視化工作,需要掌握數據可視化工具,比如 Python 可視化,Tableau 等。

如果工作和數據採集相關,你也需要掌握數據採集工具,比如 Python 爬蟲、八爪魚。

我也有一篇專門的文章,來解析如何用八爪魚模擬實戰做數據採集,主要講解了八爪魚的任務建立、流程設計,還有一個實操的案例。雖然八爪魚工具提供了各種簡易採集的方式,我更建議你把它作為參考模板,可以看下別人是如何建立的,這樣多做案例,你上手會更快。

3、業務能力(數據思維)

數據分析的本質是要對業務有幫助。因此數據分析有一個很重要的知識點就是用戶畫像。

用戶畫像是企業業務中用到比較多的場景,對於數據分析來說,就是對數據進行標籤化,實際上這是一種抽象能力。

用戶畫像建模的詳細操作,主要在我的這篇文章里「用戶畫像:標籤化就是數據的抽象能力」,從三個維度來建立用戶畫像:「都是誰」、「從哪來」、「要去哪」。若是用戶畫像建模的過程,按照數據流處理的階段來劃分,可以分為:數據層、演算法層、業務層。你會發現在不同的層,都需要打上不同的標籤。

詳細內容,可訂閱我的專欄,已超過 1W 人訂閱,現在正在優惠中,原價¥99,限時拼團¥79,最後一天了。想認真學習數據分析的同學,這個專欄絕對即學即用,提升你的數據分析能力。

7 道數據分析筆試題

作為實力檢測的一部分,筆試是非常重要的一個環節。它可以直接測驗你對數據分析具體理論的掌握程度和動手操作的能力。我出了幾道簡單的題,你不妨來看下。

問答題

1、用一種編程語言,實現 1 2 3 4 5 ... 100。

這道題考察的就是語言基礎,你可以用自己熟悉的語言完成這道題,比如 Python、Java、PHP、C 等。這裡我用 Python 舉例:sum = 0for number in range(1,101): sum = sum numberprint(sum)

2、如何理解過擬合?

過擬合和欠擬合一樣,都是數據挖掘的基本概念。過擬合指的就是數據訓練得太好,在實際的測試環境中可能會產生錯誤,所以適當的剪枝對數據挖掘演算法來說也是很重要的。

欠擬合則是指機器學習得不充分,數據樣本太少,不足以讓機器形成自我認知。

3、為什麼說樸素貝葉斯是「樸素」的?

樸素貝葉斯是一種簡單但極為強大的預測建模演算法。之所以稱為樸素貝葉斯,是因為它假設每個輸入變數是獨立的。這是一個強硬的假設,實際情況並不一定,但是這項技術對於絕大部分的複雜問題仍然非常有效。

4、SVM 最重要的思想是什麼?

SVM 計算的過程就是幫我們找到超平面的過程,它有個核心的概念叫:分類間隔。SVM 的目標就是找出所有分類間隔中最大的那個值對應的超平面。在數學上,這是一個凸優化問題。同樣我們根據數據是否線性可分,把 SVM 分成硬間隔 SVM、軟間隔 SVM 和非線性 SVM。

5、K-Means 和 KNN 演算法的區別是什麼?

首先,這兩個演算法解決的是數據挖掘中的兩類問題。K-Means 是聚類演算法,KNN 是分類演算法。其次,這兩個演算法分別是兩種不同的學習方式。K-Means 是非監督學習,也就是不需要事先給出分類標籤,而 KNN 是有監督學習,需要我們給出訓練數據的分類標識。最後,K 值的含義不同。K-Means 中的 K 值代表 K 類。KNN 中的 K 值代表 K 個最接近的鄰居。

動手題

1、我給你一組數據,如果要你做數據清洗,你會怎麼做?

實際上,這一道題中,面試官考核的是基本的數據清洗的準則,數據清洗是數據分析必不可少的重要環節。你可能看到這個數據存在 2 個問題:典韋出現了 2 次,張飛的數學成績缺失。

針對重複行,你需要刪掉其中的一行。針對數據缺失,你可以將張飛的數學成績補足。

在「數據科學家 80% 時間都花費在了這些清洗任務上?」的文章里,結合案例,我著重講解了數據清洗具體方法,我將數據清洗規則總結為以下 4 個關鍵點,統一起來叫「完全合一」,下面我來解釋下。

1、整性:單條數據是否存在空值,統計的欄位是否完善。

2、面性:觀察某一列的全部數值,比如在 Excel 表中,我們選中一列,可以看到該列的平均值、最大值、最小值。我們可以通過常識來判斷該列是否有問題,比如:數據定義、單位標識、數值本身。

3、法性:數據的類型、內容、大小的合法性。比如數據中存在非 ASCII 字元,性別存在了未知,年齡超過了 150 歲等。

4、唯性:數據是否存在重複記錄,因為數據通常來自不同渠道的匯總,重複的情況是常見的。行數據、列數據都需要是唯一的,比如一個人不能重複記錄多次,且一個人的體重也不能在列指標中重複記錄多次。

2、豆瓣電影數據集關聯規則挖掘

在數據分析領域,有一個很經典的案例,那就是「啤酒 尿布」的故事。它實際上體現的就是數據分析中的關聯規則挖掘。不少公司會對這一演算法進行不同花樣的考察,但萬變不離其宗。

如果讓你用 Apriori 演算法,分析電影數據集中的導演和演員信息,從而發現兩者之間的頻繁項集及關聯規則,你會怎麼做?

查看完整代碼:https://github.com/cystanford/Apriori

以上就是有關數據分析面試筆試的一些內容,你或許可以感受到數據分析師這個崗位的特殊性。面試找工作雖說不是一朝一夕就可以完成的事情,但我希望通過專欄,能助你一臂之力。

《數據分析實戰 45 講》專欄,不到 2 個月,已經有 1W 程序員加入學習,現正在優惠中,最後一天!


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 InfoQ 的精彩文章:

喬布斯的誕辰日,聊聊蘋果的技術往事與困局
在我的職業生涯中,沒有一種技能比 SQL 更有用!

TAG:InfoQ |