Extract dictionary value from column in data frame
If you apply
a Series
, you get a quite nice DataFrame
:
>>> df.dic.apply(pn.Series)
Feature1 Feature2 Feature3
0 aa1 bb1 cc2
1 aa2 bb2 NaN
2 aa1 cc1 NaN
From this point, you can just use regular pandas operations.
You can use a list comprehension to extract feature 3 from each row in your dataframe, returning a list.
feature3 = [d.get('Feature3') for d in df.dic]
If 'Feature3' is not in dic
, it returns None by default.
You don't even need pandas, as you can again use a list comprehension to extract the feature from your original dictionary a
.
feature3 = [d.get('Feature3') for d in a]