2014-12-03 32 views
1

我有一個數據幀,看起來像這樣:如何使用python Pandas來減少行數?

 C/A UNIT  SCP  DATEn  TIMEn DESCn ENTRIESn EXITSn 
0  A002 R051 02-00-00 05-01-11 00:00:00 REGULAR 3144312 1088151 
1  A002 R051 02-00-00 05-01-11 04:00:00 REGULAR 3144335 1088159 
2  A002 R051 02-00-00 05-01-11 08:00:00 REGULAR 3144353 1088177 
3  A002 R051 02-00-00 05-01-11 12:00:00 REGULAR 3144424 1088231 
4  A002 R051 02-00-00 05-01-11 16:00:00 REGULAR 3144594 1088275 
5  A002 R051 02-00-00 05-01-11 20:00:00 REGULAR 3144808 1088317 
6  A002 R051 02-00-00 05-02-11 00:00:00 REGULAR 3144895 1088328 

我需要創建一個新的行(ENTRIESn_hourly),這將是在從以前行的列ENTRIESn減去每行產生的。誰能幫忙? 乾杯!

達尼

+1

你在混合列和行嗎?你是否想要一個包含減法的新列? – Ffisegydd 2014-12-03 13:41:48

+0

我想你想'diff' – EdChum 2014-12-03 13:42:07

回答

1

只需撥打diff

In [26]: 

df['Entries diff']= df['ENTRIESn'].diff() 
df 
Out[26]: 
     C/A UNIT  SCP  DATEn  TIMEn DESCn ENTRIESn EXITSn \ 
index                   
0  A002 R051 02-00-00 05-01-11 00:00:00 REGULAR 3144312 1088151 
1  A002 R051 02-00-00 05-01-11 04:00:00 REGULAR 3144335 1088159 
2  A002 R051 02-00-00 05-01-11 08:00:00 REGULAR 3144353 1088177 
3  A002 R051 02-00-00 05-01-11 12:00:00 REGULAR 3144424 1088231 
4  A002 R051 02-00-00 05-01-11 16:00:00 REGULAR 3144594 1088275 
5  A002 R051 02-00-00 05-01-11 20:00:00 REGULAR 3144808 1088317 
6  A002 R051 02-00-00 05-02-11 00:00:00 REGULAR 3144895 1088328 

     Entries diff 
index     
0    NaN 
1    23 
2    18 
3    71 
4    170 
5    214 
6    87 
+0

謝謝!它像一個魅力。乾杯! – 2014-12-03 14:32:22

0

你也可以做到這一點的第一個轉移的行:

df["ENTRIESn_hourly"] = df["ENTRIESn"] - df["ENTRIESn"].shift() 

pandas.DataFrame.shift