将c.loc [index,'MAX'](一个整数)与一个整数进行比较会返回错误

时间:2018-08-05 15:24:56

标签: python pandas if-statement dataframe

我正在检查哪个流行年份之间的差异最大。这是代码。它无法比较r和c.loc [index,'MAX'],为什么会这样?它们都应该是整数...

        c = census_df[['COUNTY','POPESTIMATE2010', 'POPESTIMATE2011', 'POPESTIMATE2012', 'POPESTIMATE2013', 'POPESTIMATE2014', 'POPESTIMATE2015']]
c['MAX'] = 0 #this is where the biggest difference for each county is stored
for index, row in c.iterrows():
        x = 5
        y = x - 1
        while x >= 1: #check how you do the ops
            while y >= 0:
                r = abs(row['POPESTIMATE201'+str(x)] - row['POPESTIMATE201'+str(y)])
                if r > row['MAX']:
                    c.loc[index, ['MAX']] = r
                y -= 1
            x -= 1
c.sort_values(by=['MAX'], ascending= False)
return c.iloc[1, ['COUNTY']]

这是所需的示例数据框和输出, 数据框:

      COUNTY  POPESTIMATE2010       ...         POPESTIMATE2014  POPESTIMATE2015

0 0 4785161 ... 4846411 4858979 1 1 54660 ... 55290 55347 2 3 183193 ... 199713 203709 3 5 27341 ... 26815 26489 4 7 22861 ... 22549 22583 5 9 57373 ... 57658 57673 6 11 10887 ... 10829 10696 7 13 20944 ... 20276 20154

需要输出:

以字符串表示的最流行的2年之间具有最高增量的县名。例如:“巴伯县”

0 个答案:

没有答案