Input dataframe
data = {
'id' :[70,70,1148,557,557,104,581,69],
'r_id' : [[70,34, 44, 23, 11, 71], [70, 53, 33, 73, 41],
np.nan, np.nan, np.nan, np.nan,np.nan,[69, 68, 7],]
}
df = pd.DataFrame.from_dict(data)
print (df)
id r_id
0 70 [70, 34, 44, 23, 11, 71]
1 70 [70, 53, 33, 73, 41]
2 1148 NaN
3 557 NaN
4 557 NaN
5 104 NaN
6 581 NaN
7 69 [69, 68, 7]
Output dataframe,
data = {
'id' :[70,70,1148,557,557,104,581,69],
'r_id' : [[70,34, 44, 23, 11, 71], [70, 53, 33, 73, 41],
[1148], [557], [557], [104],[581],[69, 68, 7]]
}
df = pd.DataFrame.from_dict(data)
print (df)
id r_id
0 70 [70, 34, 44, 23, 11, 71]
1 70 [70, 53, 33, 73, 41]
2 1148 [1148]
3 557 [557]
4 557 [557]
5 104 [104]
6 581 [581]
7 69 [69, 68, 7]
I want the target column r_id with a list column the source column id is not a list, referred the below links in stackoverflow, python-pandas-replace-nan-in-one-column Tried the following as well, data_merge_rel.RELATED_DEVICE.fillna(data_merge_rel.DF0_Desc_Label_i.to_list(), inplace=True)