Python
 Computer >> コンピューター >  >> プログラミング >> Python

Python –行列をなしの頻度で並べ替える


行列を「なし」の頻度で並べ替える必要がある場合は、パラメーターを受け取り、リスト内包表記、「not」演算子、および「len」メソッドを使用して結果を判別するメソッドが定義されます。

以下は同じのデモンストレーションです-

def get_None_freq(row):
   return len([element for element in row if not element])

my_list = [[None, 24], [None, 33, 3, None],[42, 24, 55], [13, None, 24]]

print("The list is : ")
print(my_list)

my_list.sort(key = get_None_freq)

print("The result is : ")
print(my_list)

出力

The list is :
[[None, 24], [None, 33, 3, None], [42, 24, 55], [13, None, 24]]
The result is :
[[42, 24, 55], [None, 24], [13, None, 24], [None, 33, 3, None]]

説明

  • 'get_None_freq'という名前のメソッドが定義されており、リストをパラメーターとして受け取り、リスト内包表記を使用して要素を反復処理し、' not'演算子を使用して要素がリストに存在しないかどうかを確認し、その長さを決定します。

  • この長さは出力として返されます。

  • メソッドの外部では、リストが定義され、コンソールに表示されます。

  • リストは「sort」メソッドを使用してソートされ、キーは以前に定義されたメソッドとして指定されます。

  • これは、コンソールに表示される出力です。


  1. Pythonでの行列の列ソート

    マトリックスがあるとすると、各列を昇順で並べ替える必要があります。 したがって、入力が次のような場合 11 21 31 6 6 4 1 11 8 その場合、出力は次のようになります 1 6 4 6 11 8 11 21 31 これを解決するには、次の手順に従います- R:=行列の行数、C:=行列の列数 res:=与えられた行列と同じサイズの行列で、0で埋めます 0からCの範囲の列の場合は、 values:=要素をmatrix [col]のベ

  2. Pythonのsort()

    このチュートリアルでは、リストのソート方法について学習します。チュートリアルに飛び込みましょう。メソッドsortは、昇順のリストを並べ替えるために使用されます または降順 注文。 オプションのパラメータがある場合とない場合の並べ替え方法の多くのケースがあります 。 メソッドの並べ替えはインプレースメソッドです。元のリストで直接変更されます 一つずつ見ていきましょう。 デフォルトのsort() メソッド並べ替え オプションのパラメータがない場合、リストは昇順で並べ替えられます 注文。例を見てみましょう。 例 # initializing a list numbers = [4, 3, 5