我有一个pandas DataFrame,如下所示
From_email,To_email,email_count
110165.74@compuserve.com,klay@enron.com,1
2krayz@gte.net,klay@enron.com,1
"<""d@piassick"".@enron@enron.com>",klay@enron.com,1
我想将其更改为以下格式的字典
hrc_dict = {('110165.74@compuserve.com', 'klay@enron.com'): 1,
('2krayz@gte.net', 'klay@enron.com'): 1,
('<"d@piassick".@enron@enron.com>', 'klay@enron.com '): 1}
这样做的最佳方式是什么?
答案 0 :(得分:3)
您可以使用dict
comprehension从dict
创建DataFrame
。
df = DataFrame({
'From_email': ['110165.74@compuserve.com', '2krayz@gte.net', '<"d@piassick".@enron@enron.com>'],
'To_email': ['klay@enron.com', 'klay@enron.com', 'klay@enron.com'],
'email_count': [1, 1, 1]})
d = {tuple(x[:2]):x[2] for x in df[['From_email', 'To_email', 'email_count']].values}
首先,我们明确地以所需的顺序从数据框中获取必要的列。然后遍历行和每行,从电子邮件地址(前两列)创建一个元组,并将其用作键。该值只是第3列(email_count
)