Ad

Cannot Remove The First Level Element In JSON Dictionary Python

- 1 answer

This is my JSON array:

amenities =  {
      "9": {
        "id": "9",
        "name": "Fitness facilities"
      },
      "2820": {
        "id": "2820",
        "name": "Number of indoor pools - 10",
        "value": 10
      }
    },

Now I want to make it like this by removing the first level element because it is similar to 'id':

amenities =  {
     ({"id": "9","name": "Fitness facilities"}),
       ({"id": "2820","name": "Number of indoor pools - 10","value": 10})
    }

This is the dataframe I have, 'amenities' column's type is string: enter image description here

This is the code I wrote to do it:

amenities_df['amenities_list'] = amenities_df['amenities'].map(lambda amenities_dict: amenities_dict.values() if isinstance(amenities, dict) else amenities_dict)

But I cannot remove the first level element.

What did I go wrong? Please help. Thank you very much

Ad

Answer

You probably want a list, not a dictionary:

amenities = [*amenities.values()]

Result:

[{'id': '9', 'name': 'Fitness facilities'}, {'id': '2820', 'name': 'Number of indoor pools - 10', 'value': 10}]
Ad
source: stackoverflow.com
Ad