欧美一区2区三区4区公司二百,国产精品婷婷午夜在线观看,自拍偷拍亚洲精品,国产美女诱惑一区二区

歡迎來到云服務器

大數據技術

學習Python過程中,注重這8個小細節,讓你在大數據領域事半功倍

每個人都會遇到這個問題。

學習數據科學的過程,從來就不是一帆風順的。在寫代碼的時候,你是否也經常不得不反復搜索同一個問題,同一個概念,甚至同一個語法結構的特性呢?對,你不是一個人在戰斗。

我也一直在同樣的情況里掙扎著。

雖然遇到問題上 StackOverflow 搜一搜是相當正常的,但比起切實掌握理解語言特性的情況,不斷重復的遇到問題+搜來搜去,會嚴重拖慢你的速度。

如今,無窮無盡的免費資源時時刻刻充斥著互聯網,一搜即得。然而,對初學者,這既是一種祝福,也是一個詛咒。如果不經過有效管理,過度依賴網絡資源會讓你養成糟糕的習慣,從長遠上影響了你的成長。

拿我自己來說,我常常從許多內容差不多的帖子里復制代碼下來使用,而不愿意花時間和精力去學習鞏固其中所需的技術概念,以便下次能自己寫出需要的代碼。

這是個懶辦法,雖然短期內看起來它能簡單快速地搞定問題,但從長遠上看,這個做法會嚴重影響你的成長,破壞你的創造性,并從根本上動搖你回想某些語法特性的能力(這在技術面試的時候可是致命的)。

那我要怎么解決呢?

為了進一步鞏固我自己對這些概念的理解,也為了幫大家節省一下每次上網搜索的時間,我在這里整理了一下自己使用 Python、NumPy 和 Pandas 時遇到的一些常見的小問題,希望對你有幫助。

01、 只要一行代碼的列表生成器

假如每次你想要生成個列表,都要寫個循環,是不是很煩呢?好在 Python 已經有一個內建方法,只要一行代碼就能搞定這個問題。如果你不熟悉這個語法,可能理解起來會有點難度,不過一旦你習慣這個技術之后,你一定會愛不釋手的!

學習Python過程中,注重這8個小細節,讓你在大數據領域事半功倍

動圖:如何將一個循環改成列表生成式(來源:Trey Hunner )

上面這個動圖就是一個很好的例子,原來的代碼就是采用 for 循環生成列表的方法,而圖上一步一步將它改造成了一個只有一行代碼的列表生成式,再也不用循環啦。是不是很簡潔?

下面是另外一個對比范例:

使用循環:

學習Python過程中,注重這8個小細節,讓你在大數據領域事半功倍

輸出的結果是 [1, 4, 9, 16]

使用生成式:

學習Python過程中,注重這8個小細節,讓你在大數據領域事半功倍

輸出的結果也是 [1, 4, 9, 16]

02、 Lambda 表達式

明明這個函數用不了幾次,每次都要寫一大串函數構建代碼,是不是很累?別怕,Lambda 表達式來救你!Lambda 表達式能方便地創造簡單、一次使用而且匿名的函數對象。基本上,它們讓你無需費心構造一個函數,而是直接使用這個函數。

Lambda 表達式的基本語法是:

學習Python過程中,注重這8個小細節,讓你在大數據領域事半功倍

要記住,Lambda 表達式創造的函數和普通的 def 構建的函數沒什么不同,只不過函數體只有單獨一個表達式而已。看看下面這個例子:

學習Python過程中,注重這8個小細節,讓你在大數據領域事半功倍

輸出的結果是 10

03、 Map 和 Filter 函數

一旦你掌握了 Lambda 表達式,將它們與 map 或 filter 函數一起使用,可謂是威力無比。

具體來說, map() 函數接收一個列表,和一個函數,它對列表里的每個元素調用一個函數進行處理,再將結果放進一個新列表里。下面這個例子中,map() 函數遍歷 seq 中的每個元素,把它乘2,再把結果放入一個新列表,最后返回這個列表。最外面一層 list() 函數是把 map() 返回的對象轉換成列表格式。

學習Python過程中,注重這8個小細節,讓你在大數據領域事半功倍

輸出的結果是 [2, 4, 6, 8, 10]

而 filter() 函數略有不同,它接收一個列表,和一個規則函數,在對列表里的每個元素調用這個規則函數之后,云服務器租用,它把所有返回值為假的元素從列表中剔除,然后返回這個過濾后的子列表。

學習Python過程中,注重這8個小細節,讓你在大數據領域事半功倍

輸出的結果是 [3, 4, 5]

04、 Arange 和 Linspace 函數

為了快速方便地生成 numpy 的數組,你一定得熟悉 arange() 和 linspace() 這兩個函數。這兩個函數分別有自己的特定用法,不過對我們來說,它們都能很好地生成 numpy 數組(而不是用 range() ),這在數據科學的分析工作上可是相當好用的。

arange() 函數按照指定的步長返回一個等差數列。除開始和結束值之外,你還可以自定義步長和數據類型。請注意,給定的結束值參數是不會被包含在結果內的。

學習Python過程中,注重這8個小細節,讓你在大數據領域事半功倍

輸出的是一個數組對象: array([3, 5])

騰訊云代理

Copyright © 2003-2021 MFISP.COM. 國外vps服務器租用 夢飛云服務器租用 版權所有 ? 粵ICP備11019662號

主站蜘蛛池模板: 合山市| 内黄县| 辛集市| 沽源县| 绥化市| 延安市| 新兴县| 赤壁市| 时尚| 南华县| 修水县| 云和县| 兰坪| 大埔县| 日土县| 会昌县| 雅江县| 大城县| 永安市| 汉阴县| 库伦旗| 枣阳市| 海丰县| 铜梁县| 萨嘎县| 图木舒克市| 平和县| 上杭县| 余姚市| 遂川县| 金湖县| 肥西县| 建昌县| 滦南县| 渭南市| 胶南市| 九龙城区| 建始县| 开原市| 花垣县| 高碑店市|