用於資料科學的 Python – 實戰練習

用於資料科學的 Python – 實戰練習

從這 4.5 小時的課程,你會學到

  • 從頭開始的 Python 程式語言
  • 透過即時練習獲得實務經驗
  • Python 資料型別 – 列表、元組、集合、字典
  • 理解Python中程式的概念
  • 編寫並使用 Python 函數
  • 各種功能 – 範圍、輸入、映射、過濾、分割、枚舉、壓縮、解壓縮、Def、Lambda
  • Python 中的迴圈 – For 迴圈、While 迴圈等
  • Python 中的索引、切片、資料型別轉換
  • 你可以下載各講座影片和原始碼檔案

要求

  • 無需程式設計經驗。你將從頭開始學習一切
  • 你可以使用其中任何一種 – Jupyter Notebook 或 PyCharm 或 Google Colab 等。

課程說明

在本課程中,您將透過 Jupyter Notebook 中的實踐編碼練習踏上 Python 程式語言世界的旅程,這些練習以極其易於理解的方式呈現。

首先,我們將引導您完成 Jupyter Notebook 環境的安裝和初始使用,為沉浸式學習體驗奠定基礎。

隨後,我們將深入研究Python編程的各個基本主題。

讓我們來看看一些理論部分(影片講座中未涵蓋)。

介紹 –

Python 是一種高階程式語言,它使用指令來教導電腦如何執行任務。 Python 是一種易於學習、功能強大的程式語言。

更接近人類語言(如英語)的語言稱為高階語言。

Python 提供了一種簡單的物件導向程式設計方法。

物件導向是一種用來編寫程式的方法。

Python是一種免費且開源的語言,也就是我們可以閱讀、修改和分發Python腳本的原始碼。

它由 Guido van Rossum 開發並於 1991 年發布。

Python 在各領域都有其應用。 Python 用於創建 Web 應用程式、用於遊戲開發、創建桌面應用程式、用於機器學習和資料科學。

Python 是如何運作的? –

我們用Python語言來寫指令。

Python是一種解釋性語言,因此不需要編譯它。

Python程式直接透過原始碼運行(執行)。將原始碼轉換為中間字節碼,然後透過Python解釋器在內部將字節碼轉換為電腦的本機語言(即機器語言)。代碼被執行並顯示輸出。

Python 原始碼 > 中間字節碼 > 機器語言 > 執行的程式碼

什麼是程式? –

程式是一組告訴電腦執行特定任務的指令。程式語言是用於創建程式的語言。

例如。當我們單擊媒體播放器上的“播放”按鈕時,有一個程式在後台運行,告訴電腦打開音樂。

內建函數是預先定義的並且可以直接使用的函數。例如。列印()

註解是被 python 解譯器忽略的程式碼片段。註釋用於使原始程式碼更容易被其他人理解。 Python 支援單行註釋,這意味著它們只能覆蓋一行。

本課程影片講座中透過範例解釋的各種主題如下 –

1. VARIABLES

a = 2 , b = 1.2 , c = ‘Ram’, d = lambda (‘any function’)

# Variables (變數)用於儲存值。變數中儲存的值可以稍後在程式中使用。我們可以透過引用變數名稱來檢索它們。

2. PYTHON DATATYPES

Integer (int), Float , String (str) , List , Tuple , Set , Dictionary

3. String – String 是一系列字符,用單引號或雙引號括起來。例如 “Hello”, ‘Hello999’, ‘999’.

4. LIST

[ int /float / str ] à A = [ 1 , 2 , 3.4 , 3.4, ‘a’ , ‘bcd’ ]

à 資料類型的集合,Mutable:值可以更改,Ordered:值順序將保持原樣,可改變的,允許重複值。

5. TUPLE

( int / float / str ) à B = (1 , 2 , 3.4 , 3.4 , ‘a’ , ‘bcd’ )

àImmutable : 無法更改的數值 , Ordered : 值的順序將保持原樣, 不可改變的, 異質數據, 允許重複值.

6. SET

{ int / float / str } à C = { 1 , 2 , 3.4 , 5.6 , ‘a’ , ‘bcd’ }

à值無法更改,但可以添加新值,Unordered:值順序可能會更改,按升序排列項目,不允許重複值,未索引。

7. DICTIONARY

{ Key : Value } à D = { K1 : 1 , K2 : 2 , K3 : 3.4 , K4 : 5.6 , K5 : ‘ab’ , K6 : ‘bcd’ }

à Mutable(可變的) , Unordered(無順序的) , 不允許重複的鍵,索引,鍵必須是唯一的且不可變的。

8. CONCATENATION – Combining Strings

first = ‘Data’

last = “Science”

new = first + ‘ ’ + last + ‘ 是組合字串’

9. “\n” – For next new line

print(“My Name is”, “\n” , “My city is “, “\n” ,”My country is”)

print(‘Delhi’) , print(‘’) , print(‘Noida’) # 在兩個字串之間建立一行的間隙。

10. LIST FUNCTONS

< 輸入清單名稱(此處為 A)後按鍵盤上的「Tab」按鈕以顯示可用功能>

A.append(55) – 在列表末尾新增值。

A.clear( ) – 在 lis 末尾新增值

B = A.copy( ) – 建立列表的副本。

A.count(5) – 計算某個值出現的次數。

A.extend(c) – 在現有清單中新增清單。

A.index(7) – 顯示值的索引> # A.index(value, start_index, stop_index)

A.insert(3,66) – 在給定位置插入新值。

A.pop(3) – 藉助索引刪除值。 # A.pop( )

A.remove( 55) – 從清單中刪除一個值。

A.reverse( ) – 反轉清單。

A.sort( ) – 對清單進行排序。 # A.sort(reverse=True)

del A[ 1 : 4 ] – 從清單中刪除一些項目。

type(A) – 要看類型。

List Concatenation – A = [1,2,3,4] , B = [5,6,7,8] ; C = A+B = [1,2,3,4,5,6,7,8]

11. TUPLE FUNCTONS

T.count(5) – 計算某個值出現的次數。

T.index(7) – 顯示值的索引。

12. SET FUNCTONS

S.add(5) – 在集合中新增值 5。

S.clear() – 清除集合中的所有元素。

S.copy() – 複製一組。

S1.difference(S2) – S1-S2 – 它僅顯示集合 S1 的元素。

S1.difference_update(S2) –它從 set1 中刪除所有公共元素。

S.discard(x) – 它將從集合中刪除一個元素(x)。如果x不在集合中,則不會顯示錯誤。

S.remove(x) – 它將從集合中刪除一個元素(x)。如果 x 不在集合中,則會顯示錯誤。

S.pop() – 它刪除集合的第一個/隨機元素。

S1.Union(S2) – Set1 | Set2 – 它顯示了 set1 和 set 2 的所有元素。

S1.Intersection(S2) – Set1 & Set2 – 它顯示了 set1 和 set2 的共同元素。

S1.Intersection_update(S2) – 現在集合 S1 將僅包含公共元素。

S1.isdisjoint(S2) –如果 S1 和 S2 沒有任何公共值,則傳回 True,否則傳回 False。

S1.issubset(S2) – 如果 S1 的所有元素都在集合 S2 中,則傳回 True。

S2.issuperset(S1) – 如果 S1 的所有元素都在集合 S2 中,則傳回 True,否則傳回 False。

len(S) –它顯示沒有。集合中的獨特元素。

S1.symmetric_difference(S2) – S1^S2 – 顯示 S1 和 S2 中的非公共元素。

S1.symmetric_difference_update(S2) – 現在集合 S1 將僅包含非公共元素。

S1.update([4,5,6]) – 新增多個項目, in list/tuple/set form.

13. DICTIONARY FUNCTONS

D.clear( ) – 刪除 dictionary(字典)。

E = D.copy( ) – 拷貝一 dictionary.

D.get(‘K1’) – 根據字典中的鍵(key)取得值。如果該鍵不在字典中,它將顯示 None,而不顯示任何錯誤。

D.items( ) – 顯示字典的所有項目。

D.keys( ) – 顯示字典的所有按鍵。

D.values( ) – 顯示字典的所有值。

D.pop(‘K1’) – 刪除鍵 (key)及其索引(index)。

D.popitem( ) – 刪除最後一個有值的鍵。

D.setdefault(‘K3’) , D.setdefault(‘K4’, value), D[‘K4’] = value – 在字典末尾添加一個鍵。

D.update(‘E’) – 在現有字典中新增字典。

D.fromkeys(A) – 檢查字典中是否存在任何元素(鍵)

“Key” in D – 檢查字典中是否存在任何元素(鍵)

14. DATATYPE CASTING

將一種資料型別轉換為另一種資料型別。

int (1) =>1 – 將 int 轉換為 int (整數)

int (3.2) => 3 – 將 float (浮點數) 轉換為 int

int (‘5’) => 5 – 將數字字串轉換為 int

int (‘a’) => error – 無法將字母字串轉換為 int

float (3.2) => 3.2 – 將 floa 轉換為 float

float (6) => 6.0 – 將 int 轉換為 float

float (“10”) => 10.0 – 將數字字串轉換為 float

float (‘b’) => error – 無法將字母字串轉換為 float (浮點數)

Str (‘a’) => ‘a’ – 將 string (字串)轉換為字串

str (1) => ‘1’ – 將 int 轉換為字串

str (3.2) => ‘3.2’ – 將 float (浮點數)轉換為字串

15. RANGE – 它創建一個連續的數字列表。

range(start value, stop value, step value) , range(0,50,1) , range(1, 50) , range(50)

16. FUNCTION – 函數是一段程式碼,被定義為執行某些任務。我們呼叫一個函數來在需要時運行它。

Parameters:在定義函數時給定。 Ex : def func(a,b)

Arguments : 在呼叫函數時給出。 Ex : func(2,3)

def fun_name ( args / parameters ) : 多線性敘述,

def fun_name ( var1, var2 ) : 多線性敘述

def new ( 2 , 3 ) : c = a + b , return c

If the number of arguments to be passed is not fixed…then we use the Arbitrary Arguments (with *args)

Ex : def func(*values) : for i in values print(i) # 它可以採用任意數量的參數。

Keyword Arguments : 我們也可用 key 傳送 args =value syntax.

Ex : def new(b,a,c): print(“The winner is ” , a)

new(a= ‘Ram’, b= ‘Sham’, c= ‘Shiva’) ….. O/p will be : The winner is Ram

17. LAMBDA FUNCTION à 它是一個單線性函數

fun_name = lambda parameters : 單一線性敘述

Ex : sum = lambda a , b : a + b

18. INPUT FUNCTION – 它接受輸入並將其保存到變數中。

Ex 1 : a = input ( ‘Enter your name’ ) ,

Ex 2 : print ( ‘Enter your name’ )

x = input ( )

19. INDEXING – list.index( item ) , list [index value] , list [ start : stop : step ]

A.index(25) , A[1] , A [ 1 : 20 : 2 ] , A [ : 4 ] , A[ 2 : ] , A [ : ]

Negative Indexing – A[-1] , A [ 8 : 0 : -1 ] , A [ : : -1 ]

String Indexing – A.index( ‘r’ ) , A[ : 16 ]

Nested List – List in a list

Ex : A = [ [1,2,3] , 4 , 5 , 6 , [ 7,8,9] ]

20. FOR LOOP – for val in sequence : body of for loop,

Ex 1 : for x in [1,2,3,4,5] : print (x) ,

Ex 2 : for i in ‘banana’ : print (i)

BREAK STATEMENT (For Loop) – 在給定條件下停止 loop (迴圈)

1) for val in sequence : body of for loop if val == ‘seq_value’ , break

Ex : for x in [1,2,3,4,5,6,7] :

print (x)

if x == 5

break

2) for val in sequence : if val == ‘seq_value’ break , print(val)

Ex : for x in [1,2,3,4,5,6,7] :

if x == 5

break

print(x)

CONTINUE STATEMENT (For Loop) – 跳過迭代

1) for x in [1,2,3,4,5] :

if x == 4

continue

print(x)

2) for x in [1,2,3,4,5] :

print (x)

if x == 4

continue

BREAK & CONTINUE STATEMENT (For Loop) –

Ex : for x in [1,2,3,4,5,6,7]:

if x == 5 :

continue

if x == 6:

break

print(x)

RANGE FUNCTION –

for x in range (6):

print (x)

ELSE IN FOR LOOP –

1) for x in range(6):

print (x)

else :

print (‘loop is finished’)

2) for x in range(0,6):

print (x)

if x == 4 :

break

else :

print(‘loop is finished’)

PASS STATEMENT – 傳遞到下一個命令

1) for x in [1,2,3,4,5,6,7]:

Pass

2) for x in [1,2,3,4,5,6,7]:

if x == 3:

pass

print (x)

21. WHILE LOOP – 只要某個條件為真,while 迴圈就會重複一段程式碼。

1) i = 0

while i < 6 :

print (i)

i = i +1

2) i = 0

while i < 6 :

i = i +1

print (i)

BREAK STATEMENT (While Loop) –

1) i = 0

while i < 6 :

print (i)

if i == 4 :

break

i = i +1

2) i = 0

while i < 6 :

if i == 4 :

break

print (i)

i = i + 1

CONTINUE STATEMENT (While Loop) –

1) i = 0

while i < 6 :

i = i +1

if i == 3 :

continue

print (i)

2) i = 0

while i < 6 :

if i == 3 :

continue

print (i)

i = i +1

3)i = 0

while i < 6 :

if i == 3:

continue

i = i + 1

print (i)

ELSE IN WHILE LOOP –

1) i = 0

while i < 6 :

print (i)

i = i+1

else:

print (‘condition ends’)

BREAK & CONTINUE STATEMENT (While Loop) –

i = 0

while i < 10 :

i = i + 1

if i = = 3:

continue

if i = = 9 :

break

print (i)

22. SPLIT FUNCTION

它將字串拆分為列表。

Syntax : string.split ( separator , maxsplit )

23. MAP FUNCTION

它獲取列表中的所有項目並對其應用函數。

Syntax : map( function, iterables ) or map( condition, values )

Ex : list ( map ( lambda x : x+1 , [1,2,3,4,5] ) )

24. FILTER FUNCTION

它獲取列表中的所有項目並向其應用函數並返回新的過濾列表。

Syntax : filter( function, sequence )

Ex : list ( filter ( lambda x : x%2 != 0 , [1,2,3,4,5,6] ) )

25. ENUMERATE FUNCTION

它用於顯示帶索引的輸出。我們可以枚舉為列表、元組、集合、字典。

Syntax : enumerate( list )

Ex : list ( enumerate (‘apple’ , ‘mango’ , ‘orange’) )

26. ZIP FUNCTION

它用於將不同的迭代器(列表)壓縮為一個。

Syntax : z = zip(list1, list2, list3)

z = list(z) , print(z)

Example : A = [1,2,3] , B = [‘Ram’ , ‘Sham’ , ‘Shiva’] , C = [‘Delhi’, ‘Noida’, ‘Agra’]

z = zip(A, B, C) , z = list(z) , print(z)

27. UNZIP FUNCTION

Syntax : list1, list2, list3 = zip(*z)

Ex : A, B, C = zip(*z)

踏上這段豐富的旅程,釋放 Python 程式設計在各種應用程式中的巨大潛力。

目標受眾

  • 對資料科學感到好奇的初級 Python 開發人員

講師簡介

Data Science Lovers 資深資料分析師

大家好,我是資深資料分析師。

我曾使用 Python 參與各種數據分析專案。

我嘗試以非常簡單的方式解釋所有概念,以便即使初學者也能毫無疑問地理解和學習。

繼續和我們一起學習,你會喜歡我們的講座。

太感謝了

字幕:英文

  • 想要了解如何將英文字幕自動翻譯成中文? 請參考這篇 How-To

  • Udemy 永久擁有課程 許多課程約 NT400(點擊連結看更多)
  • 年訂閱每月 NT350(再享特別優惠:年度訂閱首年享 25% 折扣) 🌈 悠遊 Udemy 的 26000+ 門課,最大化學習 ( 原價 NT635/月 )
  • Udemy 現在越來越多課程有中文字幕,請參考 Soft & Share 中文線上課程
  • 手機上點選優惠連結看到的價格比電腦上看到的貴
  • $代表當地貨幣, 如在台灣為 NT
  • 點選”報名參加課程”有可能因瀏覽器 cookies 轉久一點或回報錯誤而無法連上,請稍等刷新或重新點選就會出現

報名參加課程

Sponsored by Udemy


也許你會有興趣

不受 FB 演算法影響,歡迎透過 e-mail 訂閱網站更新

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料

由 WordPress.com 建置.

Up ↑

探索更多來自 Soft & Share 的內容

立即訂閱即可持續閱讀,還能取得所有封存文章。

Continue reading