Python #重复列&;可能的降维键错误0

Python #重复列&;可能的降维键错误0,python,pandas,dataframe,Python,Pandas,Dataframe,我有以下数据集: PNO存储wk13QtyEXT wk12QtyEXT wk11QtyEXT wk10QtyEXT wk9QtyEXT wk8QtyEXT wk7QtyEXT wk6QtyEXT。。。wk3QtyOTHER wk2QtyOTHER wk1QtyOTHER wk0QtyOTHER SD目标FCST:总默认存储区最终正常分发区EXTlistSDV 0 5082003 MAEG 11 2 5 0 12 2 0 1。。。0 0 0 0 0.940 3.257143

我有以下数据集:

PNO存储wk13QtyEXT wk12QtyEXT wk11QtyEXT wk10QtyEXT wk9QtyEXT wk8QtyEXT wk7QtyEXT wk6QtyEXT。。。wk3QtyOTHER wk2QtyOTHER wk1QtyOTHER wk0QtyOTHER SD目标FCST:总默认存储区最终正常分发区EXTlistSDV
0 5082003 MAEG 11 2 5 0 12 2 0 1。。。0   0   0   0   0.940   3.257143    0   0   1.554774    3.679092
15082003 ROT 0 0 0 0 0 0。。。0   0   0   0   0.960   0.000000    0   0   1.750686    0.257539
28007205腐烂29573998。。。0   0   0   0   0.960   6.335348    1   0   1.750686    2.699206
3 8007205 MAEG 4 3 4 10 5 9 5。。。0   0   0   0   0.940   6.022894    0   0   1.554774    6.162758
48007205威茨0 0 0 0。。。0   0   0   0   0.955   0.000000    0   0   1.695398    0.000000
如您所见,形状为:21行x50列

因此,我想应用以下条件:

如果“defaultstore”中的任何一行=1,则列“FinalSL”将接收到“FCST:TOTAL”包含的值的4倍

因此,我创建以下函数来进行此计算:

def SLFinal(defaultStore, fcst):
    if (defaultStore==1):
        return (fcst*4) 
    else:
        return 2
该函数正在工作,但我想在我的数据集中应用,因此我创建以下循环来运行每一行并存储“defaultstore”和“FCST:TOTAL”列的数据:

最后,新列表将包含应用函数后的值:

FinalSLlist1 = []
for i in range(0, lenOfRows2 ):
Rows = []
for j in range(45, 50):
    Rows.append( SLFinal(DFstore[i],FcstList[i]) )
FinalSLlist.append(Rows)    
但以下错误正在返回:


---------------------------------------------------------------------------

`KeyError回溯(最近一次呼叫最后一次) 2693#获取列 2694如果self.columns.u是唯一的: ->2695返回自我。获取项目缓存(密钥) 2696 2697#重复列和可能的降维` 关键错误:0
作为一种解决方案,我尝试在DFstore[I]、FcstList[I]列中添加.iloc[I]或.loc[I],但效果不佳。求你了,我需要帮助!
`

要获得调试帮助,请提供一个包含输入和完整错误回溯的列表,其中显示错误发生的确切位置。---------------------------------------------------------------------------------------KeyError traceback(最近一次调用last)C:\ProgramData\Anaconda3\lib\site packages\pandas\core\indexes\base.py in get_loc(self,key,method,tolerance)3077 try:->3078返回self.\u engine.get_loc(key)3079除了keyrerror:pandas_libs\index.pyx in pandas.\u libs.index.IndexEngine.get_loc()pandas中的pandas\libs\index.pyx.\libs.index.IndexEngine.get\u loc()pandas\u libs\hashtable\u class\u helper.pxi.\u libs.hashtable.PyObjectHashTable.get\item()pandas中的pandas\libs\hashtable\u class\u helper.pxi.\u libs.PyObjectHashTable.get\u item()键错误:0在处理上述异常期间,发生另一个异常:KeyError Traceback(最近一次调用last)in()3行=[]4,用于范围(45,50)中的j:--->5行。追加(SLFinal(DFstore[i],FcstList[i])6 finalslist.append(行)7
DFstoreList`DFstore = copiedData.iloc[:,46:47]
DFstore

DFstoreList = []
lenOfRows2 = len(copiedData)
for i in range(0, lenOfRows2):
   DFstoreList.append(DFstore.loc[i])
FinalSLlist1 = []
for i in range(0, lenOfRows2 ):
Rows = []
for j in range(45, 50):
    Rows.append( SLFinal(DFstore[i],FcstList[i]) )
FinalSLlist.append(Rows)