亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python對(duì)列進(jìn)行平移變換的方法(shift)

 更新時(shí)間:2019年01月10日 15:53:09   作者:芒蘿  
今天小編就為大家分享一篇python對(duì)列進(jìn)行平移變換的方法(shift),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

在進(jìn)行數(shù)據(jù)操作時(shí), 經(jīng)常會(huì)碰到基于同一列進(jìn)行錯(cuò)位相加減的操作, 即對(duì)某一列進(jìn)行向上或向下平移(shift).

往常, 我們都會(huì)使用循環(huán)進(jìn)行操作, 但經(jīng)過(guò)查閱相關(guān)資料, 發(fā)現(xiàn)結(jié)合pandas里的groupby和shift兩個(gè)函數(shù)就能輕松實(shí)現(xiàn)上述要求.

#創(chuàng)建樣例數(shù)據(jù)
temp = pd.DataFrame({'id':[1,1,1,2,2,3],'value':[1,2,3,4,5,6]});temp
Out[1]:
  id value
0  1   1
1  1   2
2  1   3
3  2   4
4  2   5
5  3   6
temp['value_shift'] = temp.groupby('id')['value'].shift(1);temp
Out[180]: 
  id value value_shift
0  1   1     NaN
1  1   2     1.0
2  1   3     2.0
3  2   4     NaN
4  2   5     4.0
5  3   6     NaN

temp['value_shift_1'] = temp.groupby('id')['value'].shift(-1);temp
Out[181]: 
  id value value_shift value_shift_1
0  1   1     NaN      2.0
1  1   2     1.0      3.0
2  1   3     2.0      NaN
3  2   4     NaN      5.0
4  2   5     4.0      NaN
5  3   6     NaN      NaN

通過(guò)shift函數(shù)里面的值來(lái)控制向前還是向后偏移, 缺少的值會(huì)填充N(xiāo)aN.

groupby函數(shù)里的參數(shù)控制基于什么字段進(jìn)行shift.

官方文檔 這里是以index為基準(zhǔn).

以上這篇python對(duì)列進(jìn)行平移變換的方法(shift)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論