最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
python變長函數(shù) python 可變長度參數(shù)

Python變形

1.長寬表的變形

為麻山等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及麻山網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為網(wǎng)站建設(shè)、成都做網(wǎng)站、麻山網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!

什么是長表?什么是寬表?這個概念是對于某一個特征而言的。例如:一個表中把性別存儲在某一個列中, 那么它就是關(guān)于性別的長表;如果把性別作為列名,列中的元素是某一其他的相關(guān)特征數(shù)值,那么這個表是 關(guān)于性別的寬表。

1.1 pivot

pivot 是一種典型的長表變寬表的函數(shù)。對于一個基本的長變寬的操作而言,最重要的有三個要素,分別是變形后的行索引、需要轉(zhuǎn)到列索引的列, 以及這些列和行索引對應(yīng)的數(shù)值,它們分別對應(yīng)了 pivot 方法中的 index, columns, values 參數(shù)。新生成表的 列索引是 columns 對應(yīng)列的 unique 值,而新表的行索引是 index 對應(yīng)列的 unique 值,而 values 對應(yīng)了想 要展示的數(shù)值列。

利用 pivot 進(jìn)行變形操作需要滿足唯一性的要求,即由于在新表中的行列索引對應(yīng)了唯一的 value ,因此原 表中的 index 和 columns 對應(yīng)兩個列的行組合必須唯一。例如,現(xiàn)在把原表中第二行張三的數(shù)學(xué)改為語文就 會報錯,這是由于 Name 與 Subject 的組合中兩次出現(xiàn) (”San Zhang”, ”Chinese”) ,從而最后不能夠確定到 底變形后應(yīng)該是填寫 80 分還是 75 分。

pandas 從 1.1.0 開始,pivot 相關(guān)的三個參數(shù)允許被設(shè)置為列表,這也意味著會返回多級索引。這里構(gòu)造一 個相應(yīng)的例子來說明如何使用:下表中六列分別為班級、姓名、測試類型(期中考試和期末考試)、科目、成 績、排名。

根據(jù)唯一性原則,新表的行索引等價于對 index 中的多列使用 drop_duplicates ,而列索引的長度為 values 中的元素個數(shù)乘以 columns 的唯一組合數(shù)量(與 index 類似)。

1.2 pivot_table

pivot 的使用依賴于唯一性條件,那如果不滿足唯一性條件,那么必須通過聚合操作使得相同行列組合對應(yīng) 的多個值變?yōu)橐粋€值。例如,張三和李四都參加了兩次語文考試和數(shù)學(xué)考試,按照學(xué)院規(guī)定,最后的成績是 兩次考試分?jǐn)?shù)的平均值,此時就無法通過 pivot 函數(shù)來完成。

1.3 melt

長寬表只是數(shù)據(jù)呈現(xiàn)方式的差異,但其包含的信息量是等價的,前面提到了利用 pivot 把長表轉(zhuǎn)為寬表,那 么就可以通過相應(yīng)的逆操作把寬表轉(zhuǎn)為長表,melt 函數(shù)就起到了這樣的作用。

1.4 wide_to_long

melt 方法中,在列索引中被壓縮的一組值對應(yīng)的列元素只能代表同一層次的含義,即 values_name ?,F(xiàn)在 如果列中包含了交叉類別,比如期中期末的類別和語文數(shù)學(xué)的類別,那么想要把 values_name 對應(yīng)的 Grade 擴(kuò)充為兩列分別對應(yīng)語文分?jǐn)?shù)和數(shù)學(xué)分?jǐn)?shù),只把期中期末的信息壓縮,這種需求下就要使用 wide_to_long 函數(shù)來完成。

2 索引的變形

2.1 stack 與 unstack

unstack 函數(shù)的作用是把行索引轉(zhuǎn)為列索引

unstack 的主要參數(shù)是移動的層號,默認(rèn)轉(zhuǎn)化最內(nèi)層,移動到列索引的最內(nèi)層,同時支持同時轉(zhuǎn)化多個層

類似于 pivot 中的唯一性要求,在 unstack 中必須保證 被轉(zhuǎn)為列索引的行索引層和 被保留的行索引層構(gòu)成 的組合是唯一的,例如把前兩個列索引改成相同的破壞唯一性,那么就會報錯

與 unstack 相反,stack 的作用就是把列索引的層壓入行索引,其用法完全類似。

2.2 聚合與變形的關(guān)系

在上面介紹的所有函數(shù)中,除了帶有聚合效果的 pivot_table 以外,所有的函數(shù)在變形前后并不會帶來 values 個數(shù)的改變,只是這些值在呈現(xiàn)的形式上發(fā)生了變化。在上一章討論的分組聚合操作,由于生成了新的行列 索引,因此必然也屬于某種特殊的變形操作,但由于聚合之后把原來的多個值變?yōu)榱艘粋€值,因此 values 的 個數(shù)產(chǎn)生了變化,這也是分組聚合與變形函數(shù)的最大區(qū)別。

3 其他變形函數(shù)

3.1 crosstab

crosstab 并不是一個值得推薦使用的函數(shù),因?yàn)樗軐?shí)現(xiàn)的所有功能 pivot_table 都能完成,并且速度更快。 在默認(rèn)狀態(tài)下,crosstab 可以統(tǒng)計元素組合出現(xiàn)的頻數(shù),即 count 操作。例如統(tǒng)計 learn_pandas 數(shù)據(jù)集中 學(xué)校和轉(zhuǎn)系情況對應(yīng)的頻數(shù)

3.2 explode

explode 參數(shù)能夠?qū)δ骋涣械脑剡M(jìn)行縱向的展開,被展開的單元格必須存儲 list, tuple, Series, np.ndarray 中的一種類型。

3.3 get_dummies

get_dummies 是用于特征構(gòu)建的重要函數(shù)之一,其作用是把類別特征轉(zhuǎn)為指示變量。例如,對年級一列轉(zhuǎn)為 指示變量,屬于某一個年級的對應(yīng)列標(biāo)記為 1,否則為 0

python-函數(shù)可變參數(shù)類型

python中的函數(shù),大多需要配置參數(shù),以下是幾種函數(shù)的參數(shù)類型:

1.必備參數(shù):以正確的順序、個數(shù)傳入函數(shù)。調(diào)用時的參數(shù)情況要和聲明時一樣。最常用的情況。

def tplink(a,b):

c=a+b+b

return c?

tplink(4,2)

2.關(guān)鍵字參數(shù):使用關(guān)鍵字參數(shù)允許函數(shù)調(diào)用時參數(shù)的順序和聲明時不一致,因?yàn)閜ython解析器會在調(diào)用函數(shù)時,用參數(shù)名匹配參數(shù)值。

def tplink(age1,age2):

ageall=age1+age2+age2

return ageall

tplink(age2=4,age1=2)

3.默認(rèn)參數(shù):默認(rèn)某個參數(shù)的取值

def tplink(age1,age2=5):

ageall=age1+age2+age2

return ageall

tplink(age1=4)

4.不定長參數(shù):在聲明時并不確定 調(diào)用時的參數(shù)數(shù)量。這種情況,可以用不定長參數(shù)進(jìn)行解決,具體操作是在參數(shù)名前用*。

但不能和 關(guān)鍵字參數(shù)并用。一般在正常參數(shù)arg之后。

*args、**kwargs的定義:

這兩個都是python中的不定長參數(shù),又稱為可變參數(shù)。

*args 表示任何多個無名參數(shù),它是一個 tuple ;

**kwargs 表示關(guān)鍵字參數(shù),它是一個dict。

同時使用 * args和 ** kwargs 時,必須 * args參數(shù)列要在 ** kwargs前。且都在arg之后。

函數(shù)在調(diào)用時,會根據(jù)順序,看是否放進(jìn) *args 或者 **kwargs中。

具體可根據(jù)實(shí)際情況使用,可以 更方便靈活的接收信息。

python中函數(shù)的默認(rèn)參數(shù)和可變長參數(shù)如何排列

open最多可以帶三個參數(shù),但是后面兩個是可選的,[]內(nèi)的內(nèi)容表示可選參數(shù)。

open第一個參數(shù)是文件名稱,第二個是模式,第三個表示緩沖方式,看隨機(jī)文檔有詳細(xì)解釋的。


新聞標(biāo)題:python變長函數(shù) python 可變長度參數(shù)
本文URL:http://fisionsoft.com.cn/article/doogojo.html