PYTHON:過(guò)濾 PANDAS DATAFRAME 的 10 種方法_第1頁(yè)
PYTHON:過(guò)濾 PANDAS DATAFRAME 的 10 種方法_第2頁(yè)
PYTHON:過(guò)濾 PANDAS DATAFRAME 的 10 種方法_第3頁(yè)
PYTHON:過(guò)濾 PANDAS DATAFRAME 的 10 種方法_第4頁(yè)
PYTHON:過(guò)濾 PANDAS DATAFRAME 的 10 種方法_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

紹在Python中過(guò)濾pandas數(shù)據(jù)框的各種方法。數(shù)據(jù)過(guò)最常見(jiàn)的數(shù)據(jù)操作之一。它類似于SQL中的WHERE子句,或者您必須在n種高效的方式來(lái)執(zhí)行過(guò)濾和聚合。它有一個(gè)名為pandas的優(yōu)秀包,用于濾示例據(jù)準(zhǔn)備的最初始步驟之一。它也被稱為“子stallpandas年從紐約起飛的航班詳細(xì)信息的數(shù)據(jù)集。該數(shù)據(jù)集有和16列。請(qǐng)參閱下面的列名稱。要導(dǎo)入數(shù)據(jù)集,我們使用epdelayarrtimearrdelaycarriertailnumflight','origin','dest',airtimedistancehour'minute']pdreadcsvsrawgithubusercontentJackyPtestingmasterdatasetsnycflightscsvusecols=range(1,17))按列值過(guò)濾熊貓數(shù)據(jù)框JetBlueAirways個(gè)字母的承運(yùn)人代碼B6,來(lái)newdfdfdf.origin=="JFK")&(df.carrier=="B6")]headyearmonthdaydeptime..air_timedistancehourminute31144.081157.0201311558.0..9.05.058.0558.0...158.010055.058.0559.0...44.01875.059.01.過(guò)濾后的數(shù)據(jù)(子集化后)存儲(chǔ)在名為newdf.dforiginJFK")&(df.carrier=="B6")返回True方法二:查詢函數(shù)pandas方法可以執(zhí)行過(guò)濾。上面的代碼也可以寫(xiě)成如下所示的代碼。這種方法優(yōu)雅且更具可讀性,并且在指定列(變量)時(shí)無(wú)需每次都提newdfdfquery'origin=="JFK"&carrier=="B6"')loc種方法都返回相同的輸出。這只是過(guò)濾行newdfdfloc(df.origin=="JFK")&(df.carrier=="B6")]按行和列位置過(guò)濾PandasDataframe假設(shè)您要按位置選擇特定行(比方說(shuō)從第二行到第五行)。我們可以使用inginpythonstartsfromzerodfilocreferstofirsttofifthrowexcludingendpointthrowheredfiloc0:5,]isivalenttodfilocilocFirstrowsdfilocSecondtoFifthrowdfilocSixthrowandstcolumndfilocSecondtoFifthrow,firstcolumndfilocSecondtoFifthrow,first5columnsdfilocThirdtoSeventhrow,2ndand3rdcolumnociloc數(shù)據(jù)以供說(shuō)明xpdDataFramecol:np.arange(1,20,2)},index=[9,8,7,6,0,1,5])918356792131541719xiloct9876013579xloct92131541719如何x.loc[0:5]返回6行(包括第6個(gè)元素的5行)?這是因?yàn)椴桓鶕?jù)索引位置產(chǎn)生輸出。它只考慮索引的標(biāo)簽,也可以是字母xpdDataFramecol:range(1,5)},index=['a','b','c','d'])xlocac']#equivalenttox.iloc[0:3]a1b2按行位置和列名稱過(guò)濾熊貓數(shù)據(jù)框dflocdfindexorigindest"]]df.index),因?yàn)樗饕龢?biāo)簽并不總是按順序從0開(kāi)始。它可以從任何數(shù)字開(kāi)c選擇列的多個(gè)值aynewdfdflocdf.origin=="JFK")|(df.origin=="LGA")]Waynewdfdfdforiginisin(["JFK","LGA"])]OR定值。選擇列值不等于特定值的行newdfdfloc(df.origin!="JFK")&(df.carrier=="B6")]newdforigin的唯一值來(lái)檢查上面的代碼行是否正常工duniquenewdforigin定整個(gè)條件newdfdf(df.origin=="JFK")&(df.carrier=="B6"))]在PandasDataframe中選擇非缺失數(shù)據(jù)刪除缺失值。由于此數(shù)據(jù)框不包含任何空白值,因此您會(huì)newdfdfdforiginnotnull]在PandasDataframe中過(guò)濾字符串。但是python使處理字符或字符串列變得dfpdDataFramevar"AA_2","B_1","C_2","A_2"]})0AA_2A_2選擇值以字母“A”開(kāi)頭的行trdfdfvarstr=='A']過(guò)濾字符串長(zhǎng)度大于3的行dfdfvarstrlen]選擇包含字母A或B的字符串containsSQLSASLIKE語(yǔ)句。您可以通過(guò)在fdfvarstrcontainsABt0AA_2A_2過(guò)濾時(shí)處理列名中的空格dfrenamecolumnsvarvar,inplace=True)newdfdfquery"`var1`=='AA_2'")ipinstallupgradepandasuser如何在不使用pandas包的情況下過(guò)濾數(shù)據(jù)ythonpandas有效的方法。展示以下方法的主要目的是展示pandas的情況下進(jìn)行子集化。在您的實(shí)際項(xiàng)目中,您應(yīng)該使用pandas的內(nèi)置函數(shù)(query()、loc[]、iloc[]),這些函數(shù)在上面已經(jīng)responserequestsget'urovskygithubiopsycdatalabnycflightscsvtextitlineseaderlines用于過(guò)濾的Lambda方法Lambda用lambda,您可以在一行l(wèi)listfilterlambdaxxoriginJFKandxcarrier]==stdf用這個(gè)lambda函數(shù),你可以提交下面的代newdfdfdfapplylambdaxx["origin"]=='JFK'andx["carrier"]Baxis=1)]用于過(guò)濾的列表理解方法llistxforxinlstdfifxoriginJFKandx["carrier"]B')newdfdfilocindexfori

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論