Python - タプル内の特定のデータまたは辞書内の特定のキーのセットを使用して、データのシーケンスを並べ替えるにはどうすればよいですか?
黄舟
黄舟 2017-06-12 09:22:19
0
2
953

そのようなデータが大量の生データの事後分析を通じて取得されたと仮定します:

[(id,node,val)(id,node,val)...]
は、ユーザー ID、サーバー、値の順のタプルであり、サーバーに従って分離され、依存します。 val サイズでソートして Excel に書き込みます。
または、[{"id":xxx,"node":xxx,"val":xxx},{"id":xxx,"node":xxx,"val":xxx}...]# を生成します##kv が 1 セットしかない場合は、sorted でソートできますが、ノードの名前は不明であり、これらのサーバー名は毎日変わる可能性があります。このようなデータを取得した後、サーバー名に従ってデータを分割して並べ替えるにはどうすればよいですか?
ここでの主な問題は、ノード自体の名前が固定されていないことです。たとえば、最初に n 個のリストを作成し、そこに同じノードのデータを入れますが、リストをいくつ作成すればよいかわかりません。そして、後から加工したデータをExcelに書き込む際には、必然的にループが使われることになります。
これはループ内のループであり、データが分類された後も、データが整理された後も、新しいデータ グループの名前は決まりません。 exec コマンドを使用してもニーズを満たすことはできません

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全員に返信(2)
过去多啦不再A梦

リーリー

さらに、実際にすべてのデータを id、node、val で CSV ファイルに書き込むことができます
Linux の awk、uniq、sort およびその他のコマンド ツールを使用してシェル スクリプトを記述することも非常に高速です

また、大規模なデータがどれくらいの大きさであるか、そしてそれがどの程度の大きさであるかは明らかではありません。データの量が非常に大きい場合は、上記の Python コードのメモリが十分ではない可能性があります。これを見積もる必要があります。自分で

いいねを押す +0
我想大声告诉你

ニーズを正しく理解できれば、辞書を使用できます。辞書のキーはノードの名前であり、辞書の値は項目で構成されるリストです。

リーリー

次に、キー(サーバー名)に従って辞書(つまりデータリスト)の各項目の値を取り出し、各項目の特定の値に従ってソートするラムダを追加してソートします。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート