Pandas数据帧,最大选择

时间:2016-02-08 16:54:02

标签: python pandas

I have a pandas dataframe with following columns:

我需要编写一个函数,它将df与数据一起使用并返回带有country的字符串,其中GDP在面积(平方公里)小于200或者人口少于1000的国家中最大。

如何正确编写此代码?

def find_country(df):
    df.loc[((df.Area < 200).Max(df.GDP))|(df.Population < 1000)]

1 个答案:

答案 0 :(得分:0)

首先,您应该将第一列作为索引。这可以使用以下命令完成:

df.set_index('Country', inlace = True)

假设您要使用返工版本替换数据框。 要查找所需的国家/地区,您只需查找具有最大GDP的日期,然后返回其索引。获取索引的实际值需要索引的下标。

def find_Country(df):
    return df[df['GDP'] == max(df['GDP'])].index[0]

我希望这会有所帮助, 费边