我已经建立了一个优化能耗的模型。一些变量在数据表中给出。为了简单起见和不同数据表的可用性,我在类中构建了我的模型。
不同的能耗在类的 init 函数中定义:
def __init__(self, PV, refrigerator, clotheswasher, dishwasher, freezer):
self.PV = PV
self.refrigerator = refrigerator
self.clotheswasher = clotheswasher
self.dishwasher = dishwasher
self.freezer = freezer
这些值在我的模型中用于数据的所有时间戳(即一天,每 5 分钟数据)
for t in self.model.T:
self.model.PV[t] = self.PV
self.model.refrigerator[t] = self.refrigerator
self.model.clotheswasher[t] = self.clotheswasher
self.model.dishwasher[t] = self.dishwasher
self.model.freezer[t] = self.freezer
我想将它们相加以绘制当天总能耗的图表
self.model.total[t] = self.model.PV[t] + self.model.refrigerator[t] + self.model.clotheswasher[t] + self.model.dishwasher[t] + self.model.freezer[t]
但是,通过对self.model.total[t]
中的每个t
执行此操作,我得到了一个包含求和的数据帧,即在添加 A B 和 C 时:
index A B C
1 3 4 2
2 2 1 4
3 1 3 2
我想得到一个数据帧,例如:
index tot
1 9
2 7
3 6
但我得到:
index tot
1 9
7
6
2 9
7
6
3 9
7
6
有人可以帮助我吗?
如果我们通过处理简化的数据示例来简化您尝试执行的操作,则可以使用以下代码:
import pandas as pd
DF = pd.read_csv("Data.csv")
print DF
print
for i in range(len(DF)):
print i, sum(DF.iloc[i])
这将产生以下输出:
A B C
0 3 4 2
1 2 1 4
2 1 3 2
0 9
1 7
2 6
您可能只是在类实例化和数据加载中犯了一些简单的错误。一旦你解决了这个问题,你的结果可能会正确。从一个简单的小数据集开始,直到找到问题,并对每个步骤进行故障排除。