Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python:为数据帧中的每一行忽略dict中的第一个键_Python_Json_Pandas_Dataframe_Dictionary - Fatal编程技术网

python:为数据帧中的每一行忽略dict中的第一个键

python:为数据帧中的每一行忽略dict中的第一个键,python,json,pandas,dataframe,dictionary,Python,Json,Pandas,Dataframe,Dictionary,我正在使用一个包含dict作为字段的pandas数据帧。第一级键的名称总是唯一的,我想迭代它以提取一个嵌套值并将其附加到列表中。下面是一个关于dicts的概念: { 'alpha': { 'date': 'April 18th, 2020', 'name': 'Steve' 'countries': [ 'Grenada', 'Liechtenstein', ], }

我正在使用一个包含dict作为字段的pandas数据帧。第一级键的名称总是唯一的,我想迭代它以提取一个嵌套值并将其附加到列表中。下面是一个关于dicts的概念:

{
    'alpha': {
        'date': 'April 18th, 2020',
        'name': 'Steve'
        'countries': [
            'Grenada',
            'Liechtenstein',
        ],
    }
    'sigma': {
        'date': 'March 13th, 2020',
        'name': 'Storm'
        'countries': [
            'Mayotte',
            'Palau',
            'Bhutan'
        ],
    }
}

我希望能够抓取“countries”键中的任何内容并将其附加到列表中(并将其添加到dataframe中的新列)。对于这个特定的目录,我想收集的列表看起来像[“格林纳达”、“列支敦士登”、“马约特”、“帕劳”、“不丹]

你可以尝试这样做

my_list = []
for k, v in my_dict.items():
    my_list += v['countries']

您可以通过dict循环,以获得所需的输出: 例如:


将字典存储在名为data的变量中,然后
result=pd.DataFrame(data).loc['countries'].sum()
dict_list= {
    'alpha': {
        'date': 'April 18th, 2020',
        'name': 'Steve',
        'countries': [
            'Grenada',
            'Liechtenstein',
        ],
    },
    'sigma': {
        'date': 'March 13th, 2020',
        'name': 'Storm',
        'countries': [
            'Mayotte',
            'Palau',
            'Bhutan'
        ],
    }
}
my_list = []
for i,v in enumerate(dict_list):
    my_list.extend(dict_list[v]['countries'])
print(my_list)#['Grenada', 'Liechtenstein', 'Mayotte', 'Palau', 'Bhutan']