Pythonリストの一意の値ごとにIDを割り当てます
Python辞書を使用している間、辞書の各要素を一意に識別する必要がある場合があります。そのためには、辞書の各要素に一意のIDを割り当てる必要があります。この記事では、Pythonディクショナリで繰り返される場合に、同じ一意のIDを要素に割り当てる方法を説明します。
enumerate()およびOrderedDict.fromkeys()を使用
enumerate関数は、ディクショナリの各要素にカウンタを追加することにより、特定のディクショナリを拡張します。次に、OrderedDict.fromkeys()を適用します。これにより、ディクショナリから同じ値のカウンターが抽出され、IDの重複値が排除されます。
例
from collections import OrderedDict Alist = ['Mon','Tue','Wed','Mon',5,3,3] print("The given list : ",Alist) # Assigning ids to values list_ids = [{v: k for k, v in enumerate( OrderedDict.fromkeys(Alist))} [n] for n in Alist] # The result print("The list of ids : ",list_ids)
出力
上記のコードを実行すると、次の結果が得られます-
The given list : ['Mon', 'Tue', 'Wed', 'Mon', 5, 3, 3] The list of ids : [0, 1, 2, 0, 3, 4, 4]
コレクションからのOrderedDictの使用
このメソッドでは、新しい要素にのみ新しいキーを割り当てるdefaultdict関数を使用します。次に、ラムダ関数を使用して、一意のIDの新しいリストをループします。
例
from collections import defaultdict # Given List Alist = ['Mon','Tue','Wed','Mon',5,3,3] print("The given list : ",Alist) # Assigning ids to values d_dict = defaultdict(lambda: len(d_dict)) list_ids= [d_dict[n] for n in Alist] # Print ids of the dictionary print("The list of ids : ", list_ids)
出力
上記のコードを実行すると、次の結果が得られます-
The given list : ['Mon', 'Tue', 'Wed', 'Mon', 5, 3, 3] The list of ids : [0, 1, 2, 0, 3, 4, 4]
-
Pythonの整数リストの各要素にKを追加する
データ分析では、新しいシナリオの結果を判断するために、Pythonリストの各要素に値を追加する必要がある場合があります。これは、データセットがさまざまな値でどのように動作するかについて複数のシナリオをテストするのに役立ちます。したがって、それらのシナリオを処理できるモデルまたはアルゴリズムを作成します。この記事では、この要件をどのように処理できるかを説明します。 リスト内包表記の使用 リスト内包表記は、リストの各要素をループするリストを処理する通常の方法です。以下の例では、単純なforループを使用してリストの各要素に同じ番号を追加します。 例 orig_list = [5, 6, 7, 4,
-
Pythonのサブリストに付加価値を付ける
場合によっては、既存のリストに追加の値を導入する必要があります。この記事では、既存のリストの各項目と組み合わせて、新しい値を既存のリストに挿入する方法を説明します。 Forループの使用 同じ長さのアイテムを含むリストを取得する場合、このメソッドを使用して、リストの各アイテムに新しい値を導入できます。以下の例では、リストを取得しています 例 List = [[10, 20], [14, 8],['Mon','Tue']] print("Given List: \n" + str(List)) s = "Rise" t =