91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Pandas常用的索引方式有哪些

發布時間:2021-11-30 14:26:31 來源:億速云 閱讀:356 作者:小新 欄目:大數據

這篇文章將為大家詳細講解有關Pandas常用的索引方式有哪些,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

序言

結合場景詳細介紹兩種常用的索引方式:

第一種是基于位置(整數)的索引,案例短平快,有個粗略的了解即可,實際中偶有用到,但它的應用范圍不如第二種廣泛。

第二種是基于名稱(標簽)的索引,這是要敲黑板練的重點,因為它將是我們后面進行數據清洗和分析的重要基石。

首先,簡單介紹一下練習的案例數據:

流量來源來源明細訪客數支付轉化率客單價
一級-A351889.98%54.3
一級-B2846711.27%99.93
一級-C137472.54%0.08
一級-D51832.47%37.15
一級-E43614.31%91.73
一級-F406311.57%65.09
一級-G212210.27%86.45
一級-H20417.06%44.07
一級-I199116.52%104.57
一級-J19815.75%75.93
一級-K195814.71%85.03
一級-L178013.15%98.87
一級-M14471.04%80.07
二級-A3904811.60%91.91
二級-B33167.09%66.28
二級-C20435.04%41.91
三級-A231409.69%83.75
三級-B1481320.14%82.97
四級-A2161.85%94.25
四級-B310.00%
四級-C170.00%
四級-D30.00%

和第一篇數據集一樣,記錄著不同流量來源下,各渠道來源明細所對應的訪客數、支付轉化率和客單價。數據集雖然簡短(復雜的案例數據集在基礎篇完結后會如約而至),但是有足夠的代表性,下面開始我們索引的表演。

1. 基于位置(數字)的索引

先看一下索引的操作方式:

df.iloc[行索引,列索引]
第一個位置是行索引,輸入我們要取哪幾行位置的參數
第二個位置是列索引,輸入我們要取哪幾列的位置參數

我們需要根據實際情況,填入對應的行參數和列參數。

場景一(行選取)

目標:選擇流量來源等于一級的所有行。

思路:手指戳屏幕數一數,一級的渠道,是從第1行到第13行,對應行索引是0-12,但Python切片默認是含首不含尾的,要想選取0-12的索引行,我們得輸入0:13,列想要全部選取,則輸入冒號即可。
Pandas常用的索引方式有哪些

場景二(列選取)

目標:我們想要把所有渠道的流量來源和客單價單拎出來看一看。
思路:所有流量渠道,也就是所有行,在第一個行參數的位置我們輸入;再看列,流量來源是第1列,客單價是第5列,對應的列索引分別是0和4:
Pandas常用的索引方式有哪些
值得注意的是,如果我們要跨列選取,得先把位置參數構造成列表形式,這里就是[0,4],如果是連續選取,則無需構造成列表,直接輸入0:5(選取索引為0的列到索引為4的列)就好。

場景三(行列交叉選取)

目標:我們想要看一看二級、三級流量來源、來源明細對應的訪客和支付轉化率

思路:先看行,二級三級渠道對應行索引是13:17,再次強調索引含首不含尾的原則,我們傳入的行參數是13:18;列的話我們需要流量來源、來源明細、訪客和轉化,也就是前4列,傳入參數0:4。
Pandas常用的索引方式有哪些

2. 基于名稱(標簽)的索引

為了建立起橫向對比的體感,我們依然沿用上面三個場景。

場景一:選擇一級渠道的所有行。

思路:這次我們不用一個個數位置了,要篩選流量渠道為一級的所有行,只需做一個判斷,判斷流量來源這一列,哪些值等于一級Pandas常用的索引方式有哪些
返回的結果由True和False(布爾型)構成,在這個例子中分別代表結果等于一級和非一級。在loc方法中,我們可以把這一列判斷得到的值傳入行參數位置Pandas會默認返回結果為True的行(這里是索引從0到12的行),而丟掉結果為False的行,直接上例子:Pandas常用的索引方式有哪些

場景二:我們想要把所有渠道的流量來源和客單價單拎出來看一看。

思路:所有渠道等于所有行,我們在行參數位置直接輸入:,要提取流量來源和客單價列,直接輸入名稱到列參數位置,由于這里涉及到兩列,所以得用列表包起來:
Pandas常用的索引方式有哪些

場景三:我們想要提取二級、三級流量來源、來源明細對應的訪客和支付轉化率。

思路:行提取用判斷,列提取輸入具體名稱參數。

df2.loc[df2['流量來源'].isin(['二級','三級']),['流量來源','來源明細','訪客數','支付轉化率']]

Pandas常用的索引方式有哪些
此處插播一條isin函數的廣告,這個函數能夠幫助我們快速判斷源數據中某一列(Series)的值是否等于列表中的值。拿案例來說,df[‘流量來源’].isin([‘二級’,‘三級’]),判斷的是流量來源這一列的值,是否等于“二級”或者“三級”,如果等于(等于任意一個)就返回True,否則返回False。我們再把這個布爾型判斷結果傳入行參數,就能夠很容易的得到流量來源等于二級或者三級的渠道。

既然loc的應用場景更加廣泛,應該給他加個雞腿,再來個接地氣的場景練練手。
插入場景之前,我們先花30秒的時間捋一捋Pandas中列(Series)向求值的用法,具體操作如下:

df2['訪客數'].mean()df2['訪客數'].std()df2['訪客數'].median()df2['訪客數'].max()df2['訪客數'].min()

只需要加個尾巴,均值、標準差等統計數值就出來了,了解完這個,下面正式進入場景四。

場景四:對于流量渠道數據,我們真正應該關注的是優質渠道,假如這里我們定義訪客數、轉化率、客單價都高于平均值渠道是優質渠道,那怎么找到這些渠道呢?

思路:優質渠道,得同時滿足訪客、轉化、客單高于平均值這三個條件,這是解題的關鍵。先看看均值各是多少:
Pandas常用的索引方式有哪些
再判斷各指標列是否大于均值:

df2['訪客數'] > df2['訪客數'].mean()df2['支付轉化率']> df2['支付轉化率'].mean()df2['客單價'] > df2['客單價'].mean()

Pandas常用的索引方式有哪些
要三個條件同時滿足,他們之間是一個“且”的關系(同時滿足),在pandas中,要表示同時滿足,各條件之間要用&符號連接,條件內部最好用括號區分;如果是的關系(滿足一個即可),則用|符號連接:

(df2['訪客數'] > df2['訪客數'].mean())&(df2['支付轉化率']> df2['支付轉化率'].mean())&(df2['客單價'] > df2['客單價'].mean())

Pandas常用的索引方式有哪些
這樣連接之后,返回True則表示該渠道同時滿足訪客、轉化率、客單價都高于均值的條件,接下來我們只需要把這些值傳入到行參數的位置。

df2.loc[(df2['訪客數'] > df2['訪客數'].mean())&(df2['支付轉化率']> df2['支付轉化率'].mean())&(df2['客單價'] > df2['客單價'].mean()),:]

Pandas常用的索引方式有哪些
到這一步,我們直接篩選出了4條關鍵指標都高于均值的優質渠道。

3. 數字位置跟名稱位置的混合使用

用的是pandas.ix[行,列],不過新版pandas已經不建議使用改方法了,還是建議使用要不1要不2。

關于“Pandas常用的索引方式有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

安塞县| 齐河县| 上林县| 和林格尔县| 农安县| 百色市| 闽清县| 隆林| 岳阳县| 许昌市| 灌南县| 凌云县| 神池县| 巴塘县| 通榆县| 嵩明县| 运城市| 安阳市| 邢台市| 乌兰浩特市| 揭阳市| 呈贡县| 马山县| 塔城市| 银川市| 合作市| 连云港市| 诸城市| 沧源| 通渭县| 贵南县| 云浮市| 巩义市| 兰溪市| 拜城县| 手机| 资兴市| 株洲市| 芷江| 龙岩市| 图们市|