Here's my dataset
cluster longitude latitude
0 0 106.113339 -1.940917
1 0 110.376900 -7.813083
2 0 110.338306 -7.808583
3 1 110.860550 -6.805350
4 1 109.247000 -7.420811
5 1 109.254000 -7.397000
Here's my expected output
cluster min_longitude min_latitude max_longitude max_latitude
0 106.113339 -7.813083 110.376900 -1.940917
1 109.247000 -7.420811 110.860550 -6.805350
Here's what I did
longitude = df.groupby('cluster').agg({'longitude': ['min', 'max']}).reset_index()
longitude.columns = ['cluster', 'min_longitude', 'max_longitude']
latitude = dfgroupby('cluster').agg({'latitude': ['min', 'max']}).reset_index()
latitude.columns = ['cluster', 'min_latitude', 'max_latitude']
df_merege = longitude.merge(latitude, how='left', left_on=['cluster'], right_on = ['cluster'])
But it give simila value between min_longitude and max_longitude , and I don't know why