當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python Pandas dataframe.slice_shift()用法及代碼示例


Python是進行數據分析的一種出色語言,主要是因為以數據為中心的python軟件包具有奇妙的生態係統。 Pandas是其中的一種,使導入和分析數據更加容易。

Pandas dataframe.slice_shift()函數相當於在不複製數據的情況下進行移位。移位的數據將不包括丟失的周期,並且移位的軸將小於原始數據。該函數隻是沿指定方向在給定軸上放置指定的周期數。

用法:DataFrame.slice_shift(periods=1, axis=0)

參數:
periods:移動的周期數,可以是正數或負數

返回:平移:與調用者類型相同

範例1:采用slice_shift()在時間序列數據中將索引軸移動2個周期的函數

# importing pandas as pd 
import pandas as pd 
   
# Creating row index values for dataframe 
# We have taken time frequency to be of 12 hours interval 
# Generating five index value using "period = 5" parameter 
ind = pd.date_range('01/01/2000', periods = 5, freq ='12H') 
   
# Creating a dataframe with 4 columns 
# using "ind" as the index for our dataframe 
df = pd.DataFrame({"A":[1, 2, 3, 4, 5],  
                   "B":[10, 20, 30, 40, 50],  
                   "C":[11, 22, 33, 44, 55], 
                   "D":[12, 24, 51, 36, 2]}, index = ind) 
  
# Print the dataframe 
df

讓我們使用dataframe.slice_shift()使索引軸向正方向移動2個周期的函數

# shift index axis by two 
# periods in positive direction 
# axis = 0 is set by default 
df.slice_shift(2, axis = 0)

輸出:

注意索引標簽,前兩個標簽已刪除,但數據已沿正方向移動了兩個周期。

我們還可以將索引軸沿負方向移動一些時間

# shift index axis by two  
# periods in negative direction 
# axis = 0 is set by default 
df.slice_shift(-2, axis = 0)

輸出:

請注意,在輸出中,數據點已沿負方向(即向上)移動了2個周期,並且最後兩個索引標簽已被刪除。

範例2:采用slice_shift()用於在時間序列數據中將列軸移動2個周期

# importing pandas as pd 
import pandas as pd 
   
# Creating row index values for our data frame 
# Taken time frequency to be of 12 hours interval 
# Generating five index value using "period = 5" parameter 
   
ind = pd.date_range('01/01/2000', periods = 5, freq ='12H') 
   
# Creating a dataframe with 4 columns 
# using "ind" as the index for our dataframe 
df = pd.DataFrame({"A":[1, 2, 3, 4, 5], 
                   "B":[10, 20, 30, 40, 50], 
                   "C":[11, 22, 33, 44, 55], 
                   "D":[12, 24, 51, 36, 2]}, index = ind) 
  
# shift column axis by two periods in positive direction 
df.slice_shift(2, axis = 1)

輸出:

在輸出中,我們可以看到刪除了前兩個列標簽,並且沿列軸的數據點已在正方向上移動了2個周期。

我們還可以將列軸沿負方向移動一些時間

# shift column axis by two periods in negative direction 
df.slice_shift(-2, axis = 0)

輸出:

在輸出中,我們可以看到刪除了最後兩個列標簽,並且沿列軸的數據點已沿負方向(即向左)移動了2個周期。



相關用法


注:本文由純淨天空篩選整理自Shubham__Ranjan大神的英文原創作品 Python | Pandas dataframe.slice_shift()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。