問題タブ [defaultdict]

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 に答える
125 参照

python - 事前に生成されたキーを持つディクショナリにデフォルト設定されるデフォルトの Dict

これを達成するためのより良い方法があれば?

ここでの目標は、以前に呼び出されたことのない ID を呼び出すと、デフォルトのフラグ状態のリストを自動生成するキーの辞書 (キーはある種の ID) です。

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

python - 2 つの列のデータを結合して一意の識別子がいくつあるか数えますか?

私は、defaultdict を使用していると思われる非常に単純なカウント スクリプトを作成しようとしています (DefaultDict の使用方法について理解できないので、誰かが私にコードのスニペットをコメントしてくれれば、非常に感謝します)

私の目的は、要素 0 と要素 1 を取得し、それらを単一の文字列にマージしてから、一意の文字列がいくつあるかを数えることです...

たとえば、以下のデータには、3 つのクラス、4 つの classid で構成される 15 行があり、それらをマージすると、3 つの一意のクラスしかありません。最初の行のマージされたデータ (タイトル行を無視) は次のとおりです。Class01CD2

CSV データ:

そのアイデアは、利用可能な一意のクラスの数を単純に出力することです。これを解決するのを手伝ってくれる人はいますか?

よろしく
- ハイフレックス

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

python - 2 つのリストのすべての組み合わせを考慮した編集スクリプト

SO、私は解決するのが難しい問題だと思うものを持っています.CSVを循環して異なる列のデータの出現回数をカウントするスクリプトがあります. このスクリプトはうまく機能し、参照用に以下に含まれています。

元のスクリプト

このスクリプトを編集してパーセンテージ列を追加し、このスクリプトで列一致の複数の異なる組み合わせを手動で行うことができます。たとえば、ここでは列 7/9 を列 7/10 にすることができます。ただし、必要な機能や方法がわかりません。基本的にcalclist、このスクリプトに含まれるそれぞれを調べて、calclist 内の列参照のすべての組み合わせについて、このスクリプトに関連付けられた数値を出力する必要があります。すなわち 6/7 6/19 6/23

私の実際のスクリプトでは、計算リストはこの例よりもはるかに長いため、この編集にタイトルを列に添付する何らかの方法が含まれていればいいのですが、これを行うための適切な方法やメカニズムがありません. ただし、計算リストのタイトルのリストがあった場合、この形式でタイトルを作成する方法がいくつかあります (スクリプトの実行ごとに 3 つあることを思い出してください)。"title1-title2-x","title1-title2-y","title1-title2-z"

これは解決するのが難しい問題かもしれません。誰かがこれを手伝ってくれるなら、何よりもまずあなたに称賛を!詳細が必要な場合や不明な点がある場合は、ご連絡ください。必要に応じて、元のスクリプトのサンプル データと出力を提供できます。事前にありがとうAEA

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

python - 転置インデックスの defaultdict(list) でキー (アルファベット順) で並べ替える方法

私は逆索引を持っています。これは、私の単語辞書と、その用語が掲載されている文書の投稿リストで構成されています。私が単に欲しいのは、辞書をアルファベット順にソートすることです。これが現在の外観です(例):

...などなど、並べ替え後は次のようになります。

私が試したこと:

最初の print 呼び出しは完全に並べ替えられた単語のリストを提供しますが、「all」という単語の接続された postlist を取得しようとすると、次のエラー メッセージが表示されます。

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

python - テキストファイルから読み取った辞書のキー値を逆にする - python

以前にテキストファイルに出力された辞書があります。つまり、[in]:

もともと、キーは列 1 で、エイリアスは列 2 にあり、列 3 は値です。最後の列がキーで、1 番目と 2 番目の列が値になるようにテキストファイルを変換する必要があります。

[アウト]:

これを行う目的は、与えられた入力foo fooを by getkeybyvalue()function が返すようにすること['Foo bar language','computing']です。

私は以下のようにそれをドンしてきました:

  1. これを行うためのより冗長な方法はありますか?
  2. foo foo私のpython辞書が返すようなテキストファイルを他にどのように読むべき['Foo bar language','computing']ですか?
0 投票する
1 に答える
4026 参照

python - 複数レベルの辞書 python

私は朝、同様の質問/回答を読んで過ごしました (ネストされた辞書を実装する最良の方法は何ですか?Python で複数のレベルのキーと値を使用するPython: ネストされた辞書でキーと値のペアの値を更新する方法は? ) しかし、私はまだ問題を解決できません。

タプルをキーとしてこのタブ辞書があり、値として整数、辞書、別の辞書、およびいくつかのリストが必要です。次に、すべてのキーについて、次のようにします: (str,str,str,str):{int, {}, {}, [], [] ...}

これらの値の構造を更新できるようにしたいのですが、defaultdict が必要です。なぜなら、すべてのキーがわからず、手動で 1 つずつ宣言するには多すぎるためです。

このように (str,str,str,str):{int} のような構造に対してこれを行うことができます:

tab=defaultdict(lambda: defaultdict(int))

tab[key][0]+=1

または、次のような構造 (str,str,str,str):{{}, {}} の場合:

tab=defaultdict(lambda: defaultdict(lambda: defaultdict(int)))

tab[key][1][str]+=1

tab[key][2][str]+=1

しかし、私が本当に必要としているものではありません。ありがとうございました!

わかりました、@RemcoGerlichに感謝します問題を解決しようとしていますが、以前にクラスを使用したことがなく、コードにまだ何か問題がある可能性があります...ところで、intはカウンターであり、2つの辞書にはキーのようなIPアドレスがあり、値としての出現回数。

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

python - defaultdict を使用して Python の try および/または if ステートメントを置き換える

私は最近、デフォルトの辞書を見つけて使用し始め、いくつかのよりかさばる構造を置き換えました。「python の禅」で、python の重要なポイントの 1 つは「それを行うための明白な方法が 1 つ、できれば 1 つだけであるべきである」ということを読みました。

その基準に基づいて (または、より実際にはメモリ使用量または速度に基づいて)、次のどれ (またはまったく異なるもの) が最適でしょうか? 最初の方が正しいと思いますが、他の方のご意見をお聞かせください。

また:

また:

my_dict = defaultdict(list) の使用と追加関数の使用についても同じことが言えます。複数の for ループまたはその他の条件が使用されていると仮定すると、単純に単一の iterable から一般的な値をカウントするのではなく、明らかに異なる機能を持つことになります。

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

python - 初期化時の defaultdict への入力

defaultdict の呼び出し可能なファクトリを取得して、理解を設定できるようにするにはどうすればよいですか? おそらく無理だと思うのですが、正当な理由が思い浮かびませんか?