从两个 DataFrame 列构建字典

Jay*_*pez 3 python dictionary dataframe pandas

如何使用 Dataframe 构建字典。

df

   Vendor           Project
0    John           Cordoba
1    Saul             Pampa
2   Peter          La Plata
3    John  Federal District
4   Lukas             Salta
5  Thomas        Rio Grande
6   Peter        Rio Salado
7   Peter      Bahia Blanca
Run Code Online (Sandbox Code Playgroud)

我需要的结果是一本字典,其中供应商作为键,项目作为项目。

Zer*_*ero 7

使用

In [1893]: df.groupby('Vendor')['Project'].apply(list).to_dict()
Out[1893]:
{'John': ['Cordoba', 'Federal District'],
 'Lukas': ['Salta'],
 'Peter': ['La Plata', 'Rio Salado', 'Bahia Blanca'],
 'Saul': ['Pampa'],
 'Thomas': ['Rio Grande']}
Run Code Online (Sandbox Code Playgroud)

或者,

In [1900]: {k: g['Project'].values.tolist() for k, g in df.groupby('Vendor')}
Out[1900]:
{'John': ['Cordoba', 'Federal District'],
 'Lukas': ['Salta'],
 'Peter': ['La Plata', 'Rio Salado', 'Bahia Blanca'],
 'Saul': ['Pampa'],
 'Thomas': ['Rio Grande']}
Run Code Online (Sandbox Code Playgroud)