猿问

从数据框值创建字典

我想创建一个字典,其中键是数据框一列中的值,值来自相应行中的另一列。


所以这是一个示例数据框:


df = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list('ABCD'))

df.head()


    A   B   C   D

0   34  99  78  0

1   31  47  44  22

2   53  38  11  27

3   86  84  81  87

4   57  4   23  46

我想得到一个这样的字典,其中 A 值作为键,C 值作为字典值:


{34: 78, 31: 44, 53: 11, 86: 81,57: 23}

你会怎么做呢?


侃侃无极
浏览 193回答 2
2回答

达令说

您可以从具有键和元组的元组数组创建字典。zip因此,在使用函数将值转换为元组后,您可以在此处直接使用 dict 构造函数In [12]: dict(zip(df['A'], df['C']))                                                                                                                                                                               Out[12]: {34: 78, 31: 44, 53: 11, 86: 81, 57: 23}

繁星coding

另一种方法 Series.to_dict和DataFrame.set_indexdf.set_index('A')['C'].to_dict() # {34: 78, 31: 44, 53: 11, 86: 81, 57: 23}
随时随地看视频慕课网APP

相关分类

Python
我要回答