2014-12-03 42 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