Python?pandas替換指定數(shù)據(jù)的方法實(shí)例
一、構(gòu)造dataframe
import pandas as pd import numpy as np df=pd.DataFrame(np.arange(16).reshape(4,4),columns=["sh","bj","sz","gz"],index=["one","two","three","four"]) df.iloc[0,1]=np.nan
二、替換指定數(shù)據(jù)(fillna、isin、replace)
1、用"sz"列的同行數(shù)據(jù)將"bj"列的空值替換掉
df["bj"].fillna(df["sz"],inplace=True)
2、在1的基礎(chǔ)上,將"sz"列為2或者6的數(shù)據(jù)替換成-4
法一:直接替換
df.loc[df["sz"].isin([2,6]),"sz"]=-4
法二:函數(shù)replace()替換
df.replace({"sz":{2:-4,6:-4}},inplace=True)
三、替換函數(shù)replace()詳解
原dataframe如下:
1、全局替換元素
1)替換單個(gè)元素
df.replace(-4,0)#將所有的-4元素替換為0,返回dataframe
2)替換多個(gè)元素
法一:在字典中指定
df.replace({-4:0,4:1})#將-4替換為0,4替換為1
法二:在列表中指定
df.replace([-4,4],[0,1])#將-4替換為0,4替換為1
其中法二在列表中指定的方式,如果多個(gè)元素替換為相同的值,會(huì)更方便。
df.replace([-4,4],1)#將-4和4替換為1
2、通過(guò)指定條件替換元素
df.replace({"bj":{5:10,9:50},"gz":{7:10}})#將"bj"列的5替換為10,9替換為50,將gz列的7替換為10
也可通過(guò)直接索引列的方式來(lái)替換指定列的元素
df["bj"].replace({5:10,9:50})#將"bj"列的5替換為10,9替換為50
3、通過(guò)模糊條件替換指定元素
法一:通過(guò)字符串方法替換 str.replace()
df["bj"]=df["bj"].str.replace("北","南").fillna(df["bj"])#將"bj"列中的"北"字替換成"南"字,若無(wú)"北"值,則不替換
法二:通過(guò)正則匹配替換
df.replace("(.*)北(.*)","南京",regex=True)#將"bj"列中的含有"北"字的元素替換成"南京"
最后,如果需要在原始數(shù)據(jù)上完成替換,可以通過(guò)設(shè)置參數(shù)inplace=True。
參考鏈接:
https://blog.csdn.net/qq_18351157/article/details/107141339
總結(jié)
到此這篇關(guān)于Python pandas替換指定數(shù)據(jù)的文章就介紹到這了,更多相關(guān)Python pandas替換指定數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python 實(shí)現(xiàn)將大圖切片成小圖,將小圖組合成大圖的例子
這篇文章主要介紹了Python 實(shí)現(xiàn)將大圖切片成小圖,將小圖組合成大圖的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03django之對(duì)django內(nèi)置的User模型進(jìn)行自定義擴(kuò)展方式
這篇文章主要介紹了django之對(duì)django內(nèi)置的User模型進(jìn)行自定義擴(kuò)展方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05matplotlib 生成的圖像中無(wú)法顯示中文字符的解決方法
這篇文章主要介紹了matplotlib 生成的圖像中無(wú)法顯示中文字符的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06解決python寫(xiě)入帶有中文的字符到文件錯(cuò)誤的問(wèn)題
今天小編就為大家分享一篇解決python寫(xiě)入帶有中文的字符到文件錯(cuò)誤的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01漂亮的Django Markdown富文本app插件的實(shí)現(xiàn)
這篇文章主要介紹了漂亮的Django Markdown富文本app插件的實(shí)現(xiàn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-01-01Python?Decorator裝飾器的創(chuàng)建方法及常用場(chǎng)景分析
這篇文章主要介紹了Python?Decorator裝飾器的創(chuàng)建方法及常用場(chǎng)景,裝飾器可以分成方法裝飾器和類(lèi)裝飾器,他們的區(qū)別是一個(gè)是用函數(shù)實(shí)現(xiàn)的裝飾器,一個(gè)是用類(lèi)實(shí)現(xiàn)的裝飾器,他們也都能在方法和類(lèi)上進(jìn)行裝飾,需要的朋友可以參考下2022-07-07python pip如何手動(dòng)安裝二進(jìn)制包
這篇文章主要介紹了python pip如何手動(dòng)安裝二進(jìn)制包,幫助大家更好的進(jìn)行python開(kāi)發(fā),感興趣的朋友可以了解下2020-09-09