2024-05-28 20:50:55 发布
网友
我有以下样本数据:
class name Pref Ab Val BE Base es Pref Cw Base SS
此数据在dataframe中,我需要为class:name创建一个映射,如下所示:
这将是一个字典,它将包含类及其组件的映射名字。那个key将是class,它的值将是该类中的名称,因此每个类的值列表,其中每个类的列表长度可能不同。 有人能帮我吗?在
你要找的是groupby+to_dict操作-
groupby
to_dict
r = df.groupby('class').name.apply(list).to_dict()
或者
r {'Base': ['es', 'SS'], 'Pref': ['Ab', 'Cw'], 'Val': ['BE']}
工作原理-
name
因此,groupby操作是这里要做的最简单的事情。使用list分组并应用/聚合以获得索引如下的序列-
list
class Base [es, SS] Pref [Ab, Cw] Val [BE] Name: name, dtype: object
在此调用to_dict可以得到您想要的结果。在
你要找的是
groupby
+to_dict
操作-或者
^{pr2}$工作原理-
name
列中的每个元素都需要按类分组并显示在一个列表中因此,
groupby
操作是这里要做的最简单的事情。使用list
分组并应用/聚合以获得索引如下的序列-在此调用
to_dict
可以得到您想要的结果。在相关问题 更多 >
编程相关推荐