在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

分享10個(gè)Pandas在實(shí)際應(yīng)用中肯定會(huì)用到的技巧

數(shù)據(jù)分析與開(kāi)發(fā) ? 來(lái)源:機(jī)器之心 ? 作者:機(jī)器之心 ? 2022-11-21 14:44 ? 次閱讀

	

pandas是數(shù)據(jù)科學(xué)家必備的數(shù)據(jù)處理庫(kù),我們今天總結(jié)了10個(gè)在實(shí)際應(yīng)用中肯定會(huì)用到的技巧。

1、Select from table where f1=’a’ and f2=’b’

使用AND或OR選擇子集:

dfb=df.loc[(df.Week==week)&(df.Day==day)]
OR的話是這樣dfb=df.loc[(df.Week==week)|(df.Day==day)]

2、Select where in

從一個(gè)df中選擇一個(gè)包含在另外一個(gè)df的數(shù)據(jù),例如下面的sql

select*fromtable1wherefield1in(selectfield1fromtable2)

我們有一個(gè)名為“days”的df,它包含以下值。

3bcecdd4-6955-11ed-8abf-dac502259ad0.png

如果有第二個(gè)df:

3be44466-6955-11ed-8abf-dac502259ad0.png

可以直接用下面的方式獲取

days=[0,1,2]
df[df(days)]

3、Select where not in

就像IN一樣,我們肯定也要選擇NOT IN,這個(gè)可能是更加常用的一個(gè)需求,但是卻很少有文章提到,還是使用上面的數(shù)據(jù):

days=[0,1,2]
df[~df(days)]

使用~操作符就可以了

3bfd4f4c-6955-11ed-8abf-dac502259ad0.png

4、select sum(*) from table group by

分組統(tǒng)計(jì)和求和也是常見(jiàn)的操作,但是使用起來(lái)并不簡(jiǎn)單:

df(by=['RepID','Week','CallCycleDay']).sum()

如果想保存結(jié)果或稍后使用它們并引用這些字段,請(qǐng)?zhí)砑?as_index=False

df.groupby(by=['RepID','Week','CallCycleDay'],as_index=False).sum()

3c14cc94-6955-11ed-8abf-dac502259ad0.png

使用as_index= false,可以表的形式保存列

5、從一個(gè)表更另外一個(gè)表的字段

我們從一個(gè)df中更改了一些值,現(xiàn)在想要更新另外一個(gè)df,這個(gè)操作就很有用。

dfb=dfa[dfa.field1='somevalue'].copy()
dfb['field2']='somevalue'
dfa.update(dfb)

這里的更新是通過(guò)索引匹配的。

6、使用apply/lambda創(chuàng)建新字段

我們創(chuàng)建了一個(gè)名為address的新字段,它是幾個(gè)字段進(jìn)行拼接的。

dfa['address']=dfa.apply(lambdarow:row['StreetName']+','+
row['Suburb']+','+str(row['PostalCode']),axis=1)

7、插入新行

插入新數(shù)據(jù)的最佳方法是使用concat。我們可以用有pd. datafframe .from_records一將新行轉(zhuǎn)換為df。

newRow=row.copy()
newRow.CustomerID=str(newRow.CustomerID)+'-'+str(x)
newRow.duplicate=True
df=pd.concat([df,pd.DataFrame.from_records([newRow])])

8、更改列的類型

可以使用astype函數(shù)將其快速更改列的數(shù)據(jù)類型

df=pd.read_excel(customers_.xlsx')
df['Longitude']=df['Longitude'].astype(str)
df['Latitude']=df['Longitude'].astype(str)

9、刪除列

使用drop可以刪除列:

defcleanColumns(df):
forcolindf.columns:
ifcol[0:7]=="Unnamed":
df.drop(col,inplace=True,axis=1)
returndf

10、地圖上標(biāo)注點(diǎn)

這個(gè)可能是最沒(méi)用的技巧,但是他很好玩

這里我們有一些經(jīng)緯度的數(shù)據(jù):

3c37a2b4-6955-11ed-8abf-dac502259ad0.png

現(xiàn)在我們把它根據(jù)經(jīng)緯度在地圖上進(jìn)行標(biāo)注:

df_clustercentroids=pd.read_csv(centroidFile)
lst_elements=sorted(list(dfm.cluster2.unique()))
lst_colors=['#%06X'%np.random.randint(0,0xFFFFFF)foriinrange(len(lst_elements))]
dfm["color"]=dfm["cluster2"]
dfm["color"]=dfm["color"].apply(lambdax:lst_colors[lst_elements.index(x)])

m=folium.Map(location=[dfm.iloc[0].Latitude,dfm.iloc[0].Longitude],zoom_start=9)

forindex,rowindfm.iterrows():
folium.CircleMarker(location=[float(row['Latitude']),float(row['Longitude'])],radius=4,popup=str(row['RepID'])+'|'+str(row.CustomerID),color=row['color'],fill=True,fill_color=row['color']
).add_to(m)

forindex,rowindf_clustercentroids.iterrows():
folium.Marker(location=[float(row['Latitude']),float(row['Longitude'])],popup=str(index)+'|#='+str(dfm.loc[dfm.cluster2==index].groupby(['cluster2'])['CustomerID'].count().iloc[0]),icon=folium.Icon(color='black',icon_color=lst_colors[index]),tooltip=str(index)+'|#='+str(dfm.loc[dfm.cluster2==index].groupby(['cluster2'])['CustomerID'].count().iloc[0])).add_to(m)

m

結(jié)果如下:

3c62f5cc-6955-11ed-8abf-dac502259ad0.png

審核編輯 :李倩


聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 數(shù)據(jù)
    +關(guān)注

    關(guān)注

    8

    文章

    7193

    瀏覽量

    89786
  • SQL
    SQL
    +關(guān)注

    關(guān)注

    1

    文章

    775

    瀏覽量

    44296

原文標(biāo)題:分享 10 個(gè) Pandas 的小技巧!

文章出處:【微信號(hào):DBDevs,微信公眾號(hào):數(shù)據(jù)分析與開(kāi)發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    如何通過(guò)仿真準(zhǔn)確的預(yù)測(cè)信號(hào)完整性

    ,我們就可以計(jì)算得到信號(hào)的帶寬。一般來(lái)說(shuō)芯片廠家提供的仿真模型無(wú)論是IBIS還是Spice模型都是很信號(hào)帶寬相匹配的。比如說(shuō)一個(gè)器件的IBIS模型中肯定不會(huì)包含serdes信號(hào)的模型,如果器件中有serdes接口廠家肯定會(huì)提供S
    的頭像 發(fā)表于 01-22 11:51 ?1368次閱讀
    如何通過(guò)仿真準(zhǔn)確的預(yù)測(cè)信號(hào)完整性

    對(duì)于PD信號(hào),是要用到數(shù)字GND,還是模擬GND比較好?

    對(duì)于ADC芯片,數(shù)字信號(hào)模擬信號(hào)都會(huì)用到各自的GND(數(shù)字GND/模擬GND) 那么對(duì)于PD(Power down)信號(hào),是要用到數(shù)字GND,還是模擬GND比較好?
    發(fā)表于 01-16 07:48

    LabVIEW抽象消息使用教程(上)

    自學(xué)LabVIEW的Actor FrameWork的消息與抽象消息的時(shí)候肯定會(huì)覺(jué)得非常模糊。小編將給大家?guī)?lái)一個(gè)有關(guān)抽象消息的教程,分為上下兩期,本期將帶領(lǐng)大家創(chuàng)建Actor中的方法并為方法創(chuàng)建對(duì)應(yīng)的消息。
    的頭像 發(fā)表于 01-03 14:22 ?326次閱讀
    LabVIEW抽象消息使用教程(上)

    淺析射頻無(wú)線遙控器定制的意義——射頻肯定會(huì)取代紅外

    定制再多的產(chǎn)品,也不會(huì)有重碼問(wèn)題。另一方面,各設(shè)備廠商之間可以達(dá)成配對(duì)協(xié)議,設(shè)計(jì)一個(gè)遙控器可以配對(duì)多臺(tái)設(shè)備的功能,這樣既可以節(jié)省資源浪費(fèi),也方便人們的換裝。
    的頭像 發(fā)表于 12-10 10:33 ?323次閱讀
    淺析射頻無(wú)線遙控器定制的意義——射頻<b class='flag-5'>肯定會(huì)</b>取代紅外

    ADS114S06 Demo代碼中找不到頭文件是怎么回事?

    ADS114S06提供的Demo軟件中沒(méi)有找到相應(yīng)的頭文件,搜索也是搜索不到相應(yīng)的頭文件的,一個(gè)個(gè)文件里面看也沒(méi)有找到。我準(zhǔn)備要移植到項(xiàng)目里面了,但是這些沒(méi)有頭文件,沒(méi)有定義的宏,肯定會(huì)報(bào)錯(cuò)的。能否幫忙提供一下支持。謝謝。
    發(fā)表于 11-28 06:41

    RAPIDS cuDF將pandas提速近150倍

    NVIDIA GTC 2024 上,NVIDIA 宣布,RAPIDS cuDF 當(dāng)前已能夠?yàn)?950 萬(wàn) pandas 用戶帶來(lái) GPU 加速,且無(wú)需修改代碼。
    的頭像 發(fā)表于 11-20 09:52 ?304次閱讀
    RAPIDS cuDF將<b class='flag-5'>pandas</b>提速近150倍

    使用TLV3501做了一個(gè)單限比較器,可以使用到10MHZ,但是實(shí)際使用時(shí)卻達(dá)不到,為什么?

    目前使用TLV3501做了一個(gè)單限比較器,比較閾值為1V,仿真正常,可以使用到10MHZ,但是實(shí)際使用時(shí)卻達(dá)不到,只能用1Mhz左右, 仿真圖如下: 請(qǐng)問(wèn)
    發(fā)表于 08-29 07:23

    功放芯片中說(shuō)的失真10%實(shí)際應(yīng)用中怎么衡量?

    功放芯片中說(shuō)的失真10%實(shí)際應(yīng)用中怎么衡量
    發(fā)表于 08-14 06:03

    OPA552很容易損壞是怎么回事?

    您好!板子上有16路OPA552做直流電源輸出電路,輸出電壓范圍-10V~+30V,V+=32V,V-=-15V,實(shí)際使用中沒(méi)有什么問(wèn)題,但是OPA552經(jīng)常會(huì)損壞,不是超過(guò)功率損壞,16路中
    發(fā)表于 08-01 06:31

    請(qǐng)問(wèn)ESP-AT在編譯過(guò)程中會(huì)用到哪些源文件?

    如題,請(qǐng)問(wèn)ESP-AT在編譯過(guò)程中會(huì)用到哪些源文件?要修改藍(lán)牙相關(guān)的代碼應(yīng)該修該哪些呢?有通透的大神指點(diǎn)一下嗎?謝謝!
    發(fā)表于 06-27 06:59

    stm32wb55cgu6用BLE_HeartRate例程,連接一會(huì)就自動(dòng)斷開(kāi)的原因?

    沁恒的藍(lán)牙調(diào)試助手和st的st ble toolbox都是這樣 斷開(kāi)時(shí)間不固定,但都沒(méi)幾分鐘肯定會(huì)斷開(kāi)。。 并且斷開(kāi)后功耗也會(huì)增加兩個(gè)ma,過(guò)30秒會(huì)恢復(fù)待機(jī)狀態(tài),這邊做的最小系統(tǒng)板, 還有另外一個(gè)問(wèn)題,藍(lán)牙棧兼容ac6嗎,我使
    發(fā)表于 05-24 08:29

    晉力達(dá)分享:回流焊設(shè)備購(gòu)買需要注意的事項(xiàng)

    確認(rèn)設(shè)備的控制方式:電腦+PLC控制下的回流焊,控溫精度高,操作方便,具有記憶功能,適合產(chǎn)品品種也比較多,焊接工藝要求嚴(yán)格的產(chǎn)品。缺點(diǎn),價(jià)錢肯定會(huì)是比較高的。
    的頭像 發(fā)表于 05-17 14:51 ?294次閱讀
    晉力達(dá)分享:回流焊設(shè)備購(gòu)買需要注意的事項(xiàng)

    個(gè)應(yīng)用中需要用到ST32的觸摸遇到的疑問(wèn)求解

    個(gè)應(yīng)用中需要用到ST32的觸摸,現(xiàn)在遇到問(wèn)題,向大家求助,謝謝! 1、htsc.Init.ChannelIOs這個(gè)配置是指我們用手觸摸的那個(gè)管腳吧? 我理解是手觸摸的端口,且可以接多個(gè)觸摸端口
    發(fā)表于 04-23 07:16

    你一定會(huì)用到的紐扣電池選型方案

    一、RTC備用電池選型注意事項(xiàng)RTC是一種用于提供系統(tǒng)時(shí)間的獨(dú)立定時(shí)器,它可以系統(tǒng)斷電或低功耗模式下繼續(xù)運(yùn)行,只需要一個(gè)后備電池作為供電源。嵌入式系統(tǒng)中,選擇合適的RTC電池時(shí)非常關(guān)鍵的,它會(huì)
    的頭像 發(fā)表于 03-05 08:13 ?1618次閱讀
    你一<b class='flag-5'>定會(huì)用到</b>的紐扣電池選型方案
    主站蜘蛛池模板: 亚洲色图在线观看视频 | 丁香婷婷亚洲六月综合色 | 两性色午夜视频免费老司机 | 国产精品久久久久久久免费大片 | 经典三级四虎在线观看 | 在线视频亚洲一区 | 一级片视频在线 | 色婷婷久久综合中文久久蜜桃 | 在线免费视频你懂的 | 一区二区免费视频 | 欧美人与动另类在线 | 免费在线观看污视频 | 亚洲视频一区二区在线观看 | 让她爽的喷水叫爽乱 | 免费色视频在线观看 | 久久久久久久影院 | 亚洲偷自偷白图片 | 国产精品你懂的在线播放 | 欧美午夜性| 免费观看成年欧美1314www色 | 国产一区二区三区夜色 | 欧美高清a | 黄色网址日本 | 1024你懂的在线播放欧日韩 | 国模网站| 免费观看视频高清www | 中文字幕视频一区 | 精品99久久 | 欧美色图亚洲自拍 | 老司机深夜影院入口aaaa | 国产视频精品久久 | 天天cao在线 | 人人爱天天做夜夜爽毛片 | 欧美午夜在线观看 | 美女鲜嫩bbbb | 在线观看视频色 | 激情综合网色播五月 | 亚洲国产视频网 | 伊人久久精品成人网 | 日本在线网址 | 成年视频xxxxx免费播放软件 |