更新時(shí)間:2022年10月07日14時(shí)20分 來源:傳智教育 瀏覽次數(shù):
Pandas執(zhí)行算術(shù)運(yùn)算時(shí),會(huì)先按照索引進(jìn)行對(duì)齊,對(duì)齊以后再進(jìn)行相應(yīng)的運(yùn)算,沒有對(duì)齊的位置會(huì)用NaN進(jìn)行補(bǔ)齊。其中,Series是按行索引對(duì)齊的,DataFrame是按行索引、列索引對(duì)齊的。
假設(shè)有兩個(gè)Series對(duì)象,創(chuàng)建它們的示例代碼如下。
In [45]: obj_one=pd.Series(range(10, 13), index=range(3)) obj_one Out[45]: 0 10 1 11 2 12 dtype: int64 In [46] : obj_two=pd.Series(range(20, 25), index=range(5)) obj_two Out[46]: 0 20 1 21 2 22 3 23 4 24 dtype: int32
上述示例中創(chuàng)建了兩個(gè)Series對(duì)象:obj_one和obj_two,從輸出結(jié)果可以看出,obj_one比obj_two少兩行數(shù)據(jù)。
如果要對(duì)obj_one與obj_two進(jìn)行加法運(yùn)算,則會(huì)將它們按照索引先進(jìn)行對(duì)齊,對(duì)齊的位置進(jìn)行加法運(yùn)算,沒有對(duì)齊的位置使用NAN值進(jìn)行填充,具體代碼如下。
In [47]: obj_one + obj_two # 執(zhí)行相加運(yùn)算 Out[47]: 0 30.0 1 32.0 2 34.0 3 NaN 4 NaN dtype: float64
如果希望不使用NAN填充缺失數(shù)據(jù),則可以在調(diào)用add方法時(shí)提供fill_value參數(shù)的值,fill_value將會(huì)使用對(duì)象中存在的數(shù)據(jù)進(jìn)行補(bǔ)充,具體示例代碼如下。
In [48]: obj_one.add(obj_two, fill_value=0) # 執(zhí)行加法運(yùn)算,補(bǔ)充缺失值 Out[48]: 0 30.0 1 32.0 2 34.0 3 23.0 4 24.0 dtype: float64
當(dāng)然其他的算術(shù)運(yùn)算也是類似的,這里就不再過多贅述了。
大數(shù)據(jù)培訓(xùn):數(shù)據(jù)分析的應(yīng)用場(chǎng)景有哪些?
2022-09-20Scala中如何使用def語(yǔ)句定義方法?
2022-09-16python中多維數(shù)據(jù)如何進(jìn)行格式化操作?
2022-09-14大數(shù)據(jù)培訓(xùn):Pandas讀寫數(shù)據(jù)庫(kù)的方式
2022-09-14什么是維度?怎樣給數(shù)據(jù)維度分類?
2022-09-13計(jì)算機(jī)語(yǔ)言:機(jī)器語(yǔ)言、編匯語(yǔ)言和高級(jí)語(yǔ)言
2022-09-13北京校區(qū)