利用python進行資料分析(二)

2021-10-07 17:35:19 字數 4235 閱讀 9291

第3章 內建資料結構,函式及檔案

3.1.1 元組

a) 元組是一種固定長度、不可變的python物件序列,建立元組最簡單的辦法就是用逗號分隔序列值,通常情況下用括號括起來更明了。

b) 雖然元組中儲存的物件其自身是可變的,如列表,但元組一旦被建立,各個位置的物件是無法被修改的:假設元組中某個位置物件為列表,那你可以在這個列表內部修改列表,但是不可以修改此處列表為其他物件。

c) 使用「+」將兩個元組連在一起,使用「*」乘以整數生成含有多個拷貝的元組,元組支援切片操作。

>>

>tup =

1, 2, 3, 4

>>

>tup(1

,2,3

,4)#可以使用tuple函式將任意序列或者迭代器轉換為元組。

>>

>

tuple([

1,2,

3])(

1,2,

3)>>

>

('a'

,'b')+

('c'

,'d')(

'a',

'b',

'c',

'd')

>>

>

('a'

,'b'

,'c')*

3('a',

'b',

'c',

'a',

'b',

'c',

'a',

'b',

'c')

>>

>tup[0:

2](1

,2)

d) 元組拆包是將元組型表示式賦值給變數:將"="右邊的元組的元素拆開,賦值給"="左邊的多個變數,要求"="左邊的變數個數必須與元組中元素的長度一致。

>>

>tup =1,

2,3#元組初始化

>>

>a, b, c = tup #元組拆包

>>

>a

1

即使是巢狀的元組也可以拆包,還是注意"="左右兩邊的變數個數即可。

>>

>tup =4,

5,(6

,7)>>

>a, b,

(c, d)

= tup

>>

>d

7

*rest語法用於在元組的起始位置採集一些元素,而將其餘的放進rest中,rest為列表型別(雖然元組是支援切片操作的,但是*rest語法返回的結果並不是由剩餘元素組成的元組,而是乙個列表);這樣當我們可以取得元組中我們想要的前面的元素而不用擔心"="左右兩邊變數個數是否一致的問題了。通常python程式設計者會使用下劃線(_)來表示不想要的變數。

>>

>tup =1,

2,3,

4,5>>

>a, b,

*rest = tup

>>

>a

1>>

>rest[3

,4,5

]>>

>

type(rest)

<

class

'list'

>

>>

>a, b,

*_ = tup

>>

>_[3

,4,5

]

拆包的乙個常用場景就是遍歷元組或列表組成的序列,可以簡化**。

>>

>seq =[(

1,2,

3),(

4,5,

6),(

7,8,

9)]>>

>

for a, b, c in seq:..

.print

("a=, b=, c="

.format

(a, b, c))a=

1, b=

2, c=3a=

4, b=

5, c=6a=

7, b=

8, c=

9

事實上,所有的可迭代物件都是可以進行拆包操作的。

>>

>lista =[1

,2,3

]>>

>a, b ,c = lista

>>

>a

1

e)count方法用於計量某個數值在元組**現的次數:

>>

>tup =

'a',

'a',

'b',

'c',

'e',

'e',

'e',

'f'>>

>tup.count(

'e')

3

3.1.2 列表

>>

>lista =[1

,2,3

,4]>>

>listb =[1

,2,3

,4]>>

>listc =[1

,2,3

,4]>>

>tup =

('a'

,'b'

)>>

>ditc =

>>

>>

>lista[1

,2,3

,4,(

'a',

'b')

]>>

>listb.extend(tup)

>>

>listb[1

,2,3

,4,'a'

,'b'

]>>

>listc.extend(ditc)

>>

>listc[1

,2,3

,4,'c'

,'d'

]

e) 使用list.sort()方法對列表進行內部排序,這會直接改變列表,而無需新建乙個物件。使用reverse= true,降序排序;通過傳遞引數key進行其他操作。

>>

>lista =

['ap'

,'ad'

,'adc'

,'jul'

,'h'

,'kkkk'

]>>

>lista.sort(

)>>

>lista

>>

>

['ad'

,'adc'

,'ap'

,'h'

,'jul'

,'kkkk'

]#降序

>>

>lista.sort(reverse=

true

)>>

>lista

['kkkk'

,'jul'

,'h'

,'ap'

,'adc'

,'ad'

]#key=len:按字串長度排序

>>

>ista.sort(key=

len)

>>

>lista

['h'

,'ap'

,'ad'

,'jul'

,'adc'

,'kkkk'

]

f) 切片,通過切片可以選取某個列表的子集;通過將步進值設為-1,可以對列表進行翻轉。

>>

>lista =

['ap'

,'ad'

,'adc'

,'jul'

,'h'

,'kkkk'

]>>

>lista[::

-1][

'kkkk'

,'h'

,'jul'

,'adc'

,'ad'

,'ap'

]

《利用Python進行資料分析》(二)

補全變數 補全函式 物件的方法和屬性 in 3 b 1 2,3 in 4 b.b.clear b.extend b.pop b.sort b.copy b.index b.remove 補全模組 在變數前後使用?顯示物件資訊 物件可以是函式或例項方法 顯示函式原始碼 run 檔名.py 執行時按ct...

利用python進行資料分析

目錄 10 minutes to pandas 翻譯 pandas中loc iloc ix的區別 pandas dropna函式 pandas中dataframe的stack unstack 和pivot 方法的對比 pandas中關於set index和reset index的用法 python匿...

利用python進行資料分析

利用python進行資料分析,需要了解一些基本的方法,比如掌握回歸分析的方法,通過線性回歸和邏輯回歸,其實你就可以對大多數的資料進行回歸分析,並得出相對精確地結論。這部分需要掌握的知識點如下 回歸分析 線性回歸 邏輯回歸 基本的分類演算法 決策樹 隨機森林 樸素貝葉斯 基本的聚類演算法 k mean...