I have this data
import pandas as pd
data = {'Code': ['20','22','21','21','21','21','20','20','20','20'],
'Code2': ['1', '5', '2', '', '2', '2', '1', '', '1', '1']}
df = pd.DataFrame (data, columns = ['Code','Code2'])
Code Code2
0 20 1
1 22 5
2 21 2
3 21
4 21 2
5 21 2
6 20 1
7 20
8 20 1
9 20 1
I'm trying to fill the missing values in Code2 based on previous associations. So, I know that when Code is 20, Code2 is 1, and when Code is 21, Code2 is 2.
My output should look like this:
Code Code2
0 20 1
1 22 5
2 21 2
3 21 2
4 21 2
5 21 2
6 20 1
7 20 1
8 20 1
9 20 1
I figured I could do that using some joins but would be keen on using a one liner if possible.