首页 > 解决方案 > 使用 diff() 方法减去行

问题描述

我是 Python 的初学者。
我有一天的累计每小时能源消耗:

1  10620  
2  15336  
3  15336  
4  19691  
5  29697  
6  32499  
7  32499  
8  37353  
9  48693  
10 54019  
11 54019  
12 54019  
13 58366  
14 64595  
15 64595  
16 64595  
17 69029  
18 74381  
19 74381  
20 74381  
21 74381  
22 79106  
23 80801  
24 80801  

我想要做的是通过使用该diff()方法从下一行中减去前一行来获得每小时的能源消耗,但是python说'tuple' object has no attribute 'diff'

谁能告诉我错误在哪里以及如何解决?

标签: pythonpython-2.7

解决方案


你没有提供任何代码,没有尝试,没有输入数据类型的定义。所以只要阅读你的问题,这就是我理解你想要的。假设您有 4 小时的数据 ( ),只需从表示1,2,3,4的小时数数据中减去表示的小时数数据即可。您可以根据您想要的输出重塑/压缩结果(从您的问题中不清楚)。1,2,3[0:-1]2,3,4[1:]

data = np.array([(1, 10620), 
            (2, 15336),
            (3, 15336),  
            (4, 19691)])
hourly = data[:,1][1:] - data[:,1][0:-1]
print (hourly)

输出

[4716    0 4355]

推荐阅读