Python 按列中的最大和最小整数对数据帧进行分组

Python 按列中的最大和最小整数对数据帧进行分组,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个地址列表的数据框,其组织方式如下: number street city state zip 0 1 Green Av Evergreen FL 33000 1 2 Green Av Evergreen FL 33000 2 4 Green Av

我有一个地址列表的数据框,其组织方式如下:

    number          street          city            state    zip
0     1           Green Av          Evergreen       FL       33000
1     2           Green Av          Evergreen       FL       33000
2     4           Green Av          Evergreen       FL       33000
3     1           Red Av            Evergreen       FL       33000
4     2           Red Av            Evergreen       FL       33000
5     5           Red Av            Evergreen       FL       33000
6     3           Main St           Evergreen       FL       33000
7     5           Main St           Evergreen       FL       33000
8     8           Main St           Evergreen       FL       33000
我正在寻找一种方法来获取不同df中每条街道的最小和最大房屋编号,例如:

      street            city            state    zip       min_house#   max_house#
0     Green Av          Evergreen       FL       33000       1          4
1     Red Av            Evergreen       FL       33000       1          5
2     Main St           Evergreen       FL       33000       3          8
如何使用pandas对数据进行排序?

您可以将group by与min和max一起使用:

df = df.groupby('street').agg(['min','max'])
df.columns = [' '.join(col).strip() for col in df.columns.values]
cols = ['number min', 'number max', 'city min', 'state min', 'zip min']
df = df[cols]
df.rename(columns={'number min':'min', 'number max':'max', 'city min':'city', 
                  'state min':'state', 'zip min':'zip'},inplace=True)


df.reset_index(inplace=True)

     street  min  max       city state    zip
0  Green Av    1    4  Evergreen    FL  33000
1   Main St    3    8  Evergreen    FL  33000
2    Red Av    1    5  Evergreen    FL  33000