大資料分析為什麼要學習命令列?在與大資料分析緊密聯絡的電腦科學領域,即使對於資料分析師或大資料分析家來說,像開發人員一樣控制您的計算機也是非常寶貴的資產。unix命令列介面(cli;您還將看到它稱為終端或bash,shell等),它使我們能夠執行更多操作。
為了讓您快速入門,以下是一些您應該學習命令列的原因。
1.命令列技能很受歡迎,薪酬豐厚
根據2023年stack overflow的開發人員調查,bash / shell(即linux命令語言直譯器家族)是使用量排名第六的語言,排在python和r之前。它的薪水也 比python或r高進行調查。
它在最受歡迎的技術列表中排名最高(59.5%),在最受關注的技術列表中排名較低(40%)。
儘管stackoverflow的調查涵蓋了各種軟體開發人員和工程師,但命令列對大資料分析家而言尤其重要,因為 bash / shell與 python,ipython / jupyter,tensorflow和pytorch等大資料分析技術有著密切的聯絡。python software foundation 進行的最新python開發人員調查也支援這一點 。
2.命令列技能幫助構建可重複資料過程
大資料分析家的職責之一是確保經常(每天)定期獲取某些資訊。大多數情況下,以相同的方式獲取,處理和顯示此資料。
命令列非常適合此目的,因為命令易於自動化和複製。
請考慮以下情況:
您的雇主決定投資於資料分析。幾位資料專業人員將加入該團隊。您的任務是確保他們的機器具備啟動所需的一切。
如果可以使用cli(命令語言直譯器),則可以編寫一些指令碼來自動安裝,配置和測試所有內容。
如果不能,那麼您將不得不求助於gui並使用相同的滑鼠並多次在多台計算機上單擊移動。
這只是終端技能如何幫助使大資料分析流程更具可擴充套件性和可重複性的乙個示例。
3.命令列技能使您更靈活
在大資料分析領域,您經常會發現,如果可以使用終端而不用依賴於單擊gui,則可以擁有更大的靈活性。
由於命令列是執行其他程式的程式(因此稱為「 shell」),因此程式之間的互動通常更容易在命令列中進行調整。
一旦掌握了命令列命令,編寫指令碼就相對容易了,而shell指令碼使構建各種資料管道和工作流變得更加簡單。
更廣泛地講,了解如何使用外殼為您提供了與計算機互動的第二種選擇。
您隨時可以根據需要使用gui,但是在需要的時候,命令列可以為您提供更直接的功能和控制。
4.使用文字檔案更容易
文字檔案是儲存和處理資料的最常用方法之一,幾乎任何大資料分析專案都將涉及文字檔案的某些工作。因此,對於大資料分析家來說,能夠快速有效地處理文字檔案是一項非常有用的技能。
該外殼程式具有非常強大的文字處理工具,例如 awk 和 sed,可幫助您熟悉檔案並便於資料清理。
例如,以下**使用awk來列印名為的檔案的第一和第三列 a_csv_file,其中第二個欄位的值為 aaa教育,並使用逗號作為字段分隔符。
只需要一行**!
5.資源消耗少
當您使用有限的計算資源或僅想最大化速度時,使用命令列實際上總是比使用gui更好,因為使用gui意味著資源必須專用於呈現圖形輸出。
對於本地和遠端工作都是如此。當進行遠端連線時,gui消耗的頻寬要比終端消耗的頻寬大得多。
此外,使用gui時,潛伏期(即「刺激和響應之間的時間間隔」)會更長,如果您要控制的滑鼠落後於實際動作一兩秒,這會特別令人沮喪。
如果您只是在命令列中鍵入內容,則延遲可能會降低,並且也將更易於處理,因為您可以準確地知道任意給定時間的游標位置。
6.您需要雲的命令列技能
雲服務通常連線到命令列介面並通過命令列介面進行操作。
在去年的研究中,少於10%的[深度學習]專案是在內部執行的。這種趨勢正在加速,2023年只有4%的專案在內部執行。
根據同一篇文章,「當今96%的深度學習都在雲中執行。」
如果您對學習深度學習等高階技術感興趣,則必須具備命令列技能才能有效地將資料移入或移出雲。
7. unix shell技能可以很好地移植到其他shell
僅有一些流行的shell(bash,zsh,fish,ksh,tcsh,cmd,windows powershell等),它們相似之處多於不同之處,因此可以輕鬆地在它們之間進行切換。
8.您鍵入的速度可能比單擊速度快
研究 表明,滑鼠的使用很快就達到了平穩狀態,而鍵盤的使用儘管學習曲線陡峭,但效率更高。
為251位microsoft word的有經驗的使用者提供了乙份問卷,以評估他們對最常見命令的方法選擇。與我們的期望相反,大多數有經驗的使用者很少使用高效的鍵盤快捷鍵,而傾向於使用圖示工具欄。
進行了第二項研究,以驗證鍵盤快捷鍵確實是最有效的方法。六名參與者使用選單選擇,圖示工具欄和鍵盤快捷鍵執行了常見命令。鍵盤快捷鍵是最有效的。
換句話說:即使您覺得自己正在通過gui快速工作,也很有可能至少對於某些任務,在命令列中會更有效率。
9.審核和除錯更容易
由於在命令列上跟蹤所有活動非常容易,因此審核和除錯要容易得多。
您可以輕鬆地檢視日誌以跟蹤您在外殼程式中執行的每個操作,而如果在使用gui時單擊不正確會導致錯誤,則可能沒有任何記錄。
10. unix shell隨處可用
儘管它僅內建在mac和linux計算機上,但windows使用者仍然可以通過wsl, cygwin 和 mingw之類的工具來享受樂趣。
這意味著您在這些課程中學習的命令列技能幾乎可以在您遇到的每台計算機上使用(包括您的個人計算機,無論使用哪種作業系統)。
11.命令列比您想象的要簡單
有乙個誤解,認為使用命令列需要您知道數百條命令。實際上,儘管有數百種命令可供使用 ,但您可能僅需要這些命令中的一小部分即可完成大多數常見的大資料分析任務。
還是不服氣? 我們將為您提供一本偉大的(並且免費的)linux命令行書的** :
當要求我解釋windows和linux之間的區別時,我經常使用玩具比喻。
windows就像乙個遊戲男孩。您去商店買了乙個盒子裡所有閃亮的新東西。您將它帶回家,開啟它,然後使用它。漂亮的圖形,可愛的聲音。但是,過了一會兒,您會厭倦了隨之而來的遊戲,因此您回到商店購買了另一款遊戲。這個迴圈不斷重複。
最後,您回到商店,對櫃檯後面的人說:「我想要一款能做到這一點的遊戲!」 只是被告知沒有這種遊戲,因為沒有「市場需求」。然後你說:「但是我只需要改變這一件事!」 櫃檯後面的人說你不能改變它。遊戲全部密封在彈藥筒中。您會發現您的玩具僅限於其他人認為您需要的遊戲。
另一方面,linux就像世界上最大的erector set。您開啟它,它只是大量零件的集合。有許多鋼製支柱,螺釘,螺母,齒輪,皮帶輪,馬達,以及一些有關建造內容的建議。因此,您開始使用它。您建立乙個建議,然後另乙個。
一段時間後,您會發現自己對製作方法有自己的想法。您不必再去商店,因為您已經擁有了所需的一切。erector set發揮您的想象力。它可以滿足您的需求。當然,您選擇的玩具是個人的事情,那麼您會覺得哪種玩具更令人滿意?
想學習命令列嗎?
現在,我們已經說服您學習了命令列,請單擊此處以檢視我們的入門命令列課程,這是最近經過重做的兩門課程之一,它們深入介紹了python中的data analyst 和 python路徑中的data scientist:
1)命令列元素
2)命令列中的文字處理
摘自:
我們為什麼要學習大資料分析?(三)
我們為什麼要學習大資料分析呢?因為大資料分析代表完美的自由職業機會。相信在不久的將來,絕大多數的勞動力不會被束縛在乙個雇主身上。人們正在穩步尋找各種各樣的收入 和方法,通過這些渠道找到完美的工作與生活平衡。資料分析,這是乙個研究數字 趨勢和資料的一般問題 為您提供了乙個完美的機會,成為世界上一些最大...
大資料分析R為什麼要學習SQL知識
sql技能對於任何資料分析師或資料科學家職位至關重要。在對公司資料進行任何型別的分析之前,您必須獲取該資料,這通常意味著與sql資料庫進行互動。能夠在您的主要編碼語言的上下文中使用sql對於構建和部署新的儀表板,模型等也至關重要。這就是為什麼我們很高興在r路徑中的data analyst中宣布最新課...
為什麼要學資料分析
為什麼要學資料分析 人工智慧 大資料時代有什麼技能是可以運用在各種行業的?資料分析就可以滿足。從海量資料中獲得別人看不見的資訊,創業者可以通過資料分析來優化產品,營銷人員可以通過資料分析改進營銷策略,產品經理可以通過資料分析洞察使用者習慣,金融從業者可以通過資料分析規避投資風險,程式設計師可以通過資...