回覆列表
  • 1 # Web全棧開發

    語言工具就想廚房裡的廚具,之所以能成為大廚,就得把每一個廚具用到極致,信手拈來。您都已經是資料科學家了,python 駕輕就熟應該不是難事。

  • 2 # 西線學院

      假如你想成為一個數據科學家,或者已經是資料科學家的你想擴充套件你的技能,那麼你已經來對地方了。本文的目的就是給資料分析方面的Python新手提供一個完整的學習路徑。該路徑提供了你需要學習的利用Python進行資料分析的所有步驟的完整概述。如果你已經有一些相關的背景知識,或者你不需要路徑中的所有內容,你可以隨意調整你自己的學習路徑,並且讓大家知道你是如何調整的。

      步驟1:設定你的機器環境

      現在你已經決心要好好學習了,也是時候設定你的機器環境了。最簡單的方法就是下載分發包Anaconda。Anaconda將你以後可能會用到的大部分的東西進行了打包。採用這個方法的主要缺點是,即使可能已經有了可用的底層庫的更新,你仍然需要等待Continuum去更新Anaconda包。當然如果你是一個初學者,這應該沒什麼問題。

      如果你在安裝過程中遇到任何問題,你可以在這裡找到不同作業系統下更詳細的安裝說明。

      步驟2:學習Python語言的基礎知識

      你應該先去了解Python語言的基礎知識、庫和資料結構。完成這個課程後,你就能輕鬆的利用Python寫一些小指令碼,同時也能理解Python中的類和物件。

      具體學習內容:列表Lists,元組Tuples,字典Dictionaries,列表推導式,字典推導式。

      步驟3:學習Python語言中的正則表示式

      你會經常用到正則表示式來進行資料清理,尤其是當你處理文字資料的時候。學習正則表示式的最好方法是參加谷歌的Python課程,它會讓你能更容易的使用正則表示式。

      任務:做關於小孩名字的正則表示式練習。

      如果你還需要更多的練習,你可以參與這個文字清理的教程。資料預處理中涉及到的各個處理步驟對你來說都會是不小的挑戰。

      步驟4:學習Python中的科學庫—NumPy, SciPy, Matplotlib以及Pandas

      從這步開始,學習旅程將要變得有趣了。下邊是對各個庫的簡介,你可以進行一些常用的操作:

      根據NumPy教程進行完整的練習,特別要練習陣列arrays。這將會為下邊的學習旅程打好基礎。

      接下來學習Scipy教程。看完Scipy介紹和基礎知識後,你可以根據自己的需要學習剩餘的內容。

      這裡並不需要學習Matplotlib教程。對於我們這裡的需求來說,Matplotlib的內容過於廣泛。取而代之的是你可以學習這個筆記中前68行的內容。

      最後學習Pandas。Pandas為Python提供DataFrame功能(類似於R)。這也是你應該花更多的時間練習的地方。Pandas會成為所有中等規模資料分析的最有效的工具。作為開始,你可以先看一個關於Pandas的10分鐘簡短介紹,然後學習一個更詳細的Pandas教程。

      步驟5:學習Scikit-learn庫和機器學習的內容

      現在,我們要開始學習整個過程的實質部分了。Scikit-learn是機器學習領域最有用的Python庫。這裡是該庫的簡要概述。完成哈佛CS109課程的課程10到課程18,這些課程包含了機器學習的概述,同時介紹了像迴歸、決策樹、整體模型等監督演算法以及聚類等非監督演算法。你可以根據各個課程的任務來完成相應的課程。

      額外資源:

      如果說有那麼一本書是你必讀的,推薦Programming Collective Intelligence。這本書雖然有點老,但依然是該領域最好的書之一。

      此外,你還可以參加來自Yaser Abu-Mostafa的機器學習課程,這是最好的機器學習課程之一。如果你需要更易懂的機器學習技術的解釋,你可以選擇來自Andrew Ng的機器學習課程,並且利用Python做相關的課程練習。

      Scikit-learn的教程

      步驟6:練習,練習,再練習

      恭喜你,你已經完成了整個學習旅程。

      你現在已經學會了你需要的所有技能。現在就是如何練習的問題了,還有比透過在Kaggle上和資料科學家們進行競賽來練習更好的方式嗎?深入一個當前Kaggle上正在進行的比賽,嘗試使用你已經學過的所有知識來完成這個比賽。

      步驟7:深度學習

      附言:如果你需要大資料方面的庫,可以試試Pydoop和PyMongo。大資料學習路線不是本文的範疇,是因為它自身就是一個完整的主題。

  • 3 # 小鱷魚Croc55168430

    這個問題很弱智的。資料科學家和Python沒有什麼必然關係好吧。當個資料科學家關鍵是數學演算法設計,對資料平臺的使用掌握。程式語言只是處理資料的工具,會兩個常用的就行了,用java/go/scala/python/R這些基本上都可以,還有很多通用程式語言也可以,比如C/C++,只是用起來有點麻煩。每種語言都有各自優勢和劣勢方面。

    現在搞培訓的忽悠人比較多,現在java培訓有點過剩了,又來推python,這個小白入門容易啊。搞大資料當資料科學家是很讓人羨慕,問題是即使在專業程式設計師中也就1~2%有條件和機會從事這個。

  • 4 # djdbupt

    其實資料科學家是一個職位,為了幫助企業在雜亂無章的數字中尋找規律,提出對企業有用的價值曲線!python只是一個工具,資料科學家工具箱中的某件趁手工具!也可以用R,Matlab等!不過python有很多開源的第三方軟體包,視覺化用Matplotlib,深度學習tensorflow,自然語言處理的NLTK,機器學習包scikit-learn,矩陣計算的numpy,用於大資料處理的pyspark等!所以python掌握的程度,可以幫助你更好的建模!最起碼針對一類問題,python可以幫助你快速實現你得想法!其中,numpy,scikit-learn,scipy,pandas,tensorflow,Matplotlib,pyspark等。

  • 中秋節和大豐收的關聯?
  • 為什麼西歐平原和波德平原是兩個平原?