Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python, how to fill nulls in a data frame using a dictionary

I have a dataframe df something like this

A     B      C
1     'x'    15.0
2     'y'    NA
3     'z'    25.0

and a dictionary dc something like

dc = {'x':15,'y':35,'z':25}

I want to fill all nulls in column C of the dataframe using values of column B from the dictionary. So that my dataframe will become

A     B      C
1     'x'    15
2     'y'    35
3     'z'    25

Could anyone help me how to do that please?

thanks, Manoj

like image 584
Manoj Agrawal Avatar asked Dec 24 '22 17:12

Manoj Agrawal


1 Answers

You can use fillna with map:

dc = {'x':15,'y':35,'z':25}

df['C'] = df.C.fillna(df.B.map(dc))
df
#   A   B      C
#0  1   x   15.0
#1  2   y   35.0
#2  3   z   25.0
like image 115
Psidom Avatar answered Dec 26 '22 20:12

Psidom