'first dataframe has loan rates aganist multiple id, some of them are repeating, i want to pull out unquie id and their corresponding lowest rate
df=
ID TYPE Rate CCY Size
0 12345 IN 0.25 USD 10,00,000.00
1 67890 IN 0.35 USD 10,00,000.00
2 23456 OUT 0.10 USD 10,00,000.00
3 97673 OUT -1.00 USD 10,00,000.00
4 87563 IN -0.50 USD 10,00,000.00
5 364758 IN 0.25 USD 10,00,000.00
6 474759 OUT 0.35 USD 8,00,000.00
7 38484595 IN 0.10 USD 8,00,000.00
8 12345 IN -1.00 USD 8,00,000.00
9 67890 OUT -0.50 USD 8,00,000.00
10 23456 IN 0.25 USD 8,00,000.00
11 97673 IN 0.35 USD 8,00,000.00
12 87563 OUT 0.10 USD 5,00,000.00
13 364758 OUT -1.00 USD 5,00,000.00
14 474759 OUT -0.50 USD 5,00,000.00
15 38484595 OUT 0.25 USD 5,00,000.00
16 12345 IN 0.35 USD 5,00,000.00
17 67890 IN 0.10 USD 5,00,000.00
18 23456 OUT -1.00 USD 5,00,000.00
19 97673 OUT -0.50 USD 5,00,000.00
20 87563 IN 0.25 USD 5,00,000.00
21 364758 IN 0.35 USD 5,00,000.00
22 474759 OUT 0.10 USD 5,00,000.00
23 38484595 IN -1.00 USD 5,00,000.00
24 12345 IN -0.50 USD 5,00,000.00
25 67890 OUT 0.25 USD 5,00,000.00
26 23456 IN 0.35 USD 5,00,000.00
27 97673 IN 0.10 USD 5,00,000.00
28 87563 OUT -1.00 USD 5,00,000.00
29 364758 OUT -0.50 USD 5,00,000.00
30 474759 OUT 0.25 USD 5,00,000.00
31 38484595 OUT 0.35 USD 5,00,000.00
32 12345 IN 0.10 USD 5,00,000.00
33 67890 IN -1.00 USD 5,00,000.00
34 23456 OUT -0.50 USD 5,00,000.00
35 97673 OUT 0.25 USD 5,00,000.00
36 87563 IN 0.35 USD 5,00,000.00
37 364758 IN 0.10 USD 5,00,000.00
38 474759 OUT -1.00 USD 5,00,000.00
39 38484595 IN -0.50 USD 5,00,000.00
40 12345 IN 0.25 USD 5,00,000.00
41 67890 OUT 0.35 USD 5,00,000.00
42 23456 IN 0.10 USD 5,00,000.00
43 97673 IN -1.00 USD 5,00,000.00
44 87563 OUT -0.50 USD 5,00,000.00
45 364758 OUT 0.25 USD 5,00,000.00
46 474759 OUT 0.35 USD 5,00,000.00
47 38484595 OUT 0.10 USD 5,00,000.00
ID lowest rate highest rate
0 12345
1 67890
2 23456
3 97673
4 87563
5 364758
6 474759
7 38484595
I want to pull lowest and highest rates in df1 from df data for their corresponding Ids
Solution 1:[1]
You may try this:
import numpy as np
import pandas as pd
df = pd.read_csv('./data.csv')
df = df.groupby('ID').agg({'Rate' : [np.min, np.max]}).Rate
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Kongvungsovanreach |

