問題タブ [hash-of-hashes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
340 参照

ruby - calculating the sum of specific array values in ruby?

Pivotal Tracker is a project management tool that I use. I'm using the Pivotal Tracker Ruby Gem to access the API.

I'm trying to create a hash of each member with the number of points that they have assigned to them.

The end result should look something like:

I've already created an array of each of the members in the project in @members.

I wrote the code below to help me create a hash of each member with the corresponding number of stories he/she has assigned, but what I really need is the sum of the estimate value for each story assigned to them (estimate is the point value for a given story).

So, I'm wondering how, for each member, I can sum up the estimate value of each story owned_by that particular member. NOTE: Unestimated stories have -1 in the estimate field and should not be included in the sum.

Any help on how I can modify the above loop to iterate through each of the stories and sum the estimate values (excluding minus 1s) would be much appreciated. I have a feeling there's some nice Ruby jujitsu to get this done!

Sample data returned by project.stories.all(:owned_by => @members[i], :current_state => ['started', 'unstarted']) in case people are wondering about the format:

P.S. Suggestions for how to make this title more descriptive would be much appreciated.

0 投票する
3 に答える
1190 参照

perl - 再帰的にハッシュのハッシュを設定するperl

私はこのようなハッシュを持っています:

次のようなハッシュのハッシュを生成したい:

上記のハッシュは、ルート ノードとさらに子ノードを持つツリーに他なりません。

すべての親ノードの子ノードをチェックするには、再帰を使用する必要があることを理解しています。以前ここで尋ねられた質問を見てきました。再帰中に特定のノードのデータが特定の親キーの下に格納される方法を理解できません。言い換えれば、ハッシュのハッシュを再帰的にどのように設定できますか?

ポインタや説明に感謝します。

御時間ありがとうございます

0 投票する
2 に答える
111 参照

ruby-on-rails - 内部ハッシュのキー値に基づいて、ハッシュのハッシュを最も効率的に反復処理するにはどうすればよいですか?

内部ハッシュ内の特定のキーの値に基づいて解析および表示したいWebサイトAPIによって返されたハッシュのJSONハッシュがあります。

これを実現するソリューションを考えることはできますが、数行のコードが必要であり、効率的ではないようです。設定より規約に焦点を当てていることを考えると、確かにRailsでネイティブに行う方法が必要です。私は少しググってみましたが、この問題をカバーするものは何も見つかりませんでした。

APIからのサンプル応答:

考えられる解決策は、各内部ハッシュを調べて、関連するキー値の値を決定し、テスト済みのハッシュと比較してキー値が配置されている場所に基づいて保存することです。完了したら、戻ります。

0 投票する
2 に答える
755 参照

arrays - 配列のハッシュの配列を、ネストされた配列要素ごとではなく、ハッシュごとに 1 回反復処理するにはどうすればよいですか?

これが他の場所で解決されている場合はお詫び申し上げます。探して探しました。

各チャンクの名前を左揃えにし、各名前の引数をインデントすることで、データのチャンクを分離する構成ファイルを使用しています (以下を__DATA__参照)。$hash{name}スカラー値を%hash{args}指すキーと、値の配列を指すキーを持つハッシュに各チャンクを格納するスクリプトを作成しました。各チャンクは独自のハッシュに格納されるため、ハッシュへの参照は匿名で配列に格納されます。最終的には、これらのハッシュを 1 つずつ取得して値を処理したいと考えていますが、配列の反復処理に問題があります。

各ハッシュに格納されている値を出力しようとすると、リスト コンテキストでその配列のハッシュ参照を取得しているように見えるため、%hash{args} が 3 つの要素を持つ配列への参照である場合、それは foreach ループの 3 倍になります。実行します。

そのループ内のコードを、その配列に吸い込んだハッシュ参照ごとに 1 回だけ実行するにはどうすればよいですか?

私の出力を確認すると、ネストされた配列参照を逆参照する必要があることは明らかですが、ループを正しくすることに固執しているため、まだそれに取り組むことができませんでした。多分解決策は両方を修正しますか?

見よ:

出力は次のとおりです。

0 投票する
5 に答える
3057 参照

perl - perlでハッシュのハッシュの特定のキーにアクセスしますか?

HoHの 2 番目の値または 2 番目のキーにアクセスするにはどうすればよいですか。各グループ キーの member2 とそれに関連付けられたに アクセスしたいです。

0 投票する
2 に答える
2182 参照

perl - Perlで別のハッシュ内のハッシュキーの名前を変更できますか?

select_allhashrefmysql クエリで使用して取得したハッシュ (HoH) のハッシュがあります。フォーマットは私が望むものに最適で、同様の方法で他に 2 つの HoH があります。

最終的にこれらの HoH をマージしたいのですが、唯一の問題 (私が思う) は、1 つの HoH の「サブハッシュ」に別の HoH と同じ名前のキーがあることです。例えば

したがって、データをダンプすると、次のような結果が得られます。

(これは例なので、異なる名前を持つことは非論理的に見えるかもしれませんが、私はそれが必要です:))

だから私は、またはそのような名前'name'に変更したいと思います。'address_name'これは可能ですか?私はあなたができることを知っています

(編集: これはオンラインで見つけた例ですが、テストしていません。)

しかし、その部分をどのように表すかわかりません'id'。何か案は?

0 投票する
2 に答える
2001 参照

perl - perlで2つ以上の「深い」(多次元)ハッシュを組み合わせる

ここで私が欲しいものを正確に説明する質問があります: perl で 2 つの深いハッシュをマージする方法

ただし、そこにある答えは私にはうまくいかないようです(Mergeモジュールの使用の提案)。

私は次のような2つのハッシュを持っています:

Hash::Mergeまたはフォーマットを使用する場合、%c = {%a,%b}毎回これを取得します:

(したがって、基本的に最初のデータを2番目のデータで上書きし、キーを台無しにしました)必要な場合:

したがって、キーが同じ場合はデータがマージされ、そうでない場合は新しいキーが最後に追加されます。これが理にかなっていることを願っています。間違った使い方をしたMergeか、「手動で」ループに追加する必要があるかもしれませんが、とにかく、それについて考えるのに多くの時間を費やしています!

編集: Merge を使用して、何かばかげたことをしているかどうかを確認する方法:

私は持っている:

0 投票する
4 に答える
3972 参照

ruby - 任意の深さでネストされたハッシュ値にアクセスする最もルビーっぽい方法は何ですか?

次のようなハッシュが与えられます:

ある場合にはservice/keyを返し、他の場合にはother / service/keyを返す関数が必要です。簡単な方法は、次のようにハッシュとキーの配列を渡すことです。

この呼び出しの結果が「cred_secret_abcdefg」になるように:

val_for()で書いたものよりも良い方法があるはずです。

0 投票する
1 に答える
191 参照

perl - 配列値のハッシュのハッシュにアクセスできません

私はPerlで次のコードを書きました。コードはpdbファイルを読み取り、いくつかの値を取得しています。すべてが完璧に機能しているコードの上部は無視してください。問題はサブルーチンの部分にあります。ここでは、モデルをキーとしてhash3に配列を格納しようとしていますが、これを使用してif条件内で配列値にアクセスできます。

$ hash3 {$ model} {$coordinates}[1]。

しかし、すべてのforeachループから抜け出し、要素にアクセスしようとすると、1つの値しか取得できません。最後のforeachループを見て、ハッシュ値にアクセスするのが間違っている方法を教えてください。

私が使用しているpdbファイルは、このリンクからダウンロードできますhttp://www.rcsb.org/pdb/download/downloadFile.do?fileFormat=pdb&compression=NO&structureId=1NZS

Data :: Dumperオプションを使用した後、この種の出力が得られます

0 投票する
0 に答える
112 参照

ruby-on-rails - ハッシュのハッシュのような音楽ウィッシュリストの実装

たとえば、itunes rails gem を使用しようとしています。

そのため、iTunes gem で作成されたトラックでウィッシュリストを作成し、Cookie に保存する必要があります (はい)。そして、私は次のようなことを考えました:

しかし、レールでこれを正しく行う方法と、たとえば任意のトラックからアーティスト名を取得する方法は?