【发布时间】:2021-02-02 06:12:26
【问题描述】:
我希望从以下两个哈希中创建一个新的哈希。
invoiced_data =
{"Jan 2020"=>0, "Feb 2020"=>0, "Mar 2020"=>0, "Apr 2020"=>0,
"May 2020"=>0, "Jun 2020"=>0, "Jul 2020"=>0.331027548e7,
"Aug 2020"=>0.31668664e6, "Sep 2020"=>0, "Oct 2020"=>0,
"Nov 2020"=>0, "Dec 2020"=>0}
payment_transaction_data =
{"Jul 2020"=>400.0, "Aug 2020"=>26924.0}
后一个哈希的所有键都是前一个哈希的键。后一个哈希可能为空。
我希望构造的哈希与invoiced_data 具有相同的键。这些键的值是带有键:Invoiced_data 和:payment_transaction_type 的哈希值。 :Invoiced_data 的值将是给定键的invoiced_data 的值,:payment_transaction_type 的值将是给定键的payment_transaction_data 的值,如果键存在,否则为零。我需要的结果如下。
{"Jan 2020": {Invoiced_data: 0, payment_transaction_data: 0},
"Feb 2020": {Invoiced_data: 0, payment_transaction_data: 0},
"Mar 2020": {Invoiced_data: 0, payment_transaction_data: 0},
"Apr 2020": {Invoiced_data: 0, payment_transaction_data: 0},
"May 2020": {Invoiced_data: 0, payment_transaction_data: 0},
"Jun 2020": {Invoiced_data: 0, payment_transaction_data: 0},
"Jul 2020": {Invoiced_data: 3310275.48, payment_transaction_data: 400.0},
"Aug 2020": {Invoiced_data: 316686.64, payment_transaction_data: 26924.0},
"Sep 2020": {Invoiced_data: 0, payment_transaction_data: 0},
"Oct 2020": {Invoiced_data: 0, payment_transaction_data: 0},
"Nov 2020": {Invoiced_data: 0, payment_transaction_data: 0},
"Dec 2020": {Invoiced_data: 0, payment_transaction_data: 0}}
【问题讨论】:
-
我相信您会批准我的编辑,但请不要犹豫回滚或重新编辑。你说(原文如此),“我想用
Invoiced_data的所有键创建新哈希,因为payment_transaction_data可能没有[Invoiced_data] 的所有键”。我假设你的意思是payment_transaction_data没有不是Invoiced_data的键的键,但我可能是错的,因为某些答案显然解释为意味着payment_transaction_data可能有不是Invoiced_data的键的键,其中如果返回的哈希应该包括这些键。如果我有误解,请编辑。
标签: ruby-on-rails ruby hash merge