熊猫计算-索引0超出轴0的范围,大小为0

时间:2018-07-19 10:54:18

标签: python dataframe

我正在将2个逗号分隔的值和一个标识符从csv加载到数据帧中。之后,我用点替换逗号并将其转换为浮点数:

tzeitverbrauch = []

df = df.apply(lambda x: x.str.replace(',', '.'))
df.Aufwand_geplant = df.Aufwand_geplant.astype(float).fillna(0.0)
df.Aufwand_laufend_ist = df.Aufwand_laufend_ist.astype(float).fillna(0.0)

此后,我调用一个函数,该函数为一个标识符计算这两个值的差值:

def calculate(identifier):

    aufwand_geplant = df.loc[(df.Identifier == identifier), 'Aufwand_geplant'].values[0]
    aufwand_ist = df.loc[(df.Identifier == identifier), 'Aufwand_laufend_ist'].values[0]

    x = aufwand_ist - aufwand_geplant

    tzeitverbrauch.append(x)


for x in df_identifier:
    calculate(x)

但是,由于某些奇怪的原因,我得到了结果,并且在调试代码时一切正常,但是在某些时候却弹出了异常:

Traceback (most recent call last):
File "H:/PycharmProjects/PycharmProjects/PP-KPI/Levenshtein.py", line 53, 
in   <module> calculate(x)
File "H:/PycharmProjects/PycharmProjects/PP-KPI/Levenshtein.py", line 43, 
in   calculate aufwand_geplant = df.loc[(df.identifier == identifier), 'Aufwand_geplant'].values[0]

IndexError: index 0 is out of bounds for axis 0 with size 0

此处的值:

print(len(df.Aufwand_geplant)) = 125
print(len(df.Aufwand_laufend_ist)) = 125
print(len(df_identifier)) = 125

我感谢您的投入,并帮助您确定问题所在!

enter image description here

0 个答案:

没有答案