パンダQカット

Pandaqkatto



「「Python」には多くのライブラリが含まれており、データを分析または操作したい場合は、これらの「Python」のライブラリを利用します。「pandas」もそのライブラリです。 「pandas」ライブラリはデータ サイエンスの分野で使用されており、機械学習活動でも使用されています。 「pandas」DataFrame は、データの保存に役立ちます。 「pandas」では、データのビニングが必要な場合、「qcut()」メソッドを利用します。 「qcut()」メソッドは、連続特徴をカテゴリ特徴に変換するために使用されます。この「qcut()」メソッドにさまざまなタイプのパラメータを追加して、さまざまなタイプの結果を取得できます。このチュートリアルはすべて「qcut()」メソッドに関するものであり、ここでは「qcut()」メソッドについて詳しく説明します。このチュートリアルでは、「pandas」の「qcut()」関数を使用してデータ ビニングを行う方法を説明します。

例 # 01

これらのコードに「qcut()」メソッドを適用し、「Spyder」アプリでこれらのコードを実行します。 「パンダ」を操作する必要がある場合、「パンダ」ライブラリをコードにインポートするときにのみ、その機能にアクセスできます。最初に「import」を置き、次に「pandas as pd」と書きます。ここで、「qcut()」メソッドを適用する必要があるため、このために、ここで DataFrame を作成しています。 「R_ID、R_name、R_age」を列とする「Random_df」を構築し、「R_ID」にも「R_17、R_21、R_24、R_29、R_31、R_34、R_44、R_46、R_50、R_51、R_55、 R_61、R_73、および R_81」。次に、「R_name」列に「Theodore、Teddy、Noah、Leo、Ivy、Henry、Freddie、Evelyn、Ava、Willow、Theo、Oscar、Jacob、Harper」を追加します。この後、「R_age」列に「21、33、12、43、22、7、21、51、72、19、10、9、37、および 40」を挿入します。ここで、「Random_df」を含む「print()」を使用します。これは、「Random_df」データフレームのレンダリングに役立ちます。 DataFrame を作成したばかりで、「qcut()」メソッドはまだ適用していません。








「実行」アイコンは、コードの実行に役立ちます。この「実行」アイコンを押すと、このコードの結果が「Spyder」アプリの端末に表示されます。 「Random_df」DataFarme は、この例で記述したコードの結果として表示されます。ここで、「qcut()」メソッドを適用し、その結果も表示します。




ここでデータをビニングしています。 「R_age」列をビニングし、データのビニングに役立つ「pandas」のメソッドである「pd.qcut()」メソッドを配置します。このメソッドでは、DataFrame の名前と、この「qcut()」メソッドを適用する列名を挿入します。また、「q」の値を「5」に設定し、「R_age」列のデータを 5 つの等しい分位数に分割するために使用します。 「print()」に「qcut()」メソッドを追加したので、端末にもビニングデータが表示されます。




ここでは、ビニング後のデータが表示されており、「R_age」を 5 つの分位数にカットしています。また、「R_age」列のデータがビニングされるカテゴリも表示されます。カテゴリ シリーズは、「R_age」ビンを表します。






これらのビンのラベルを調整することもできます。これらのビン ラベルを追加して、解釈を容易にします。これらのビンのラベルを追加する「R_age_qcut」列を「Random_df」に追加します。それらにラベルを付けるために、再び「pd.qcut()」メソッドを利用します。そこに「少し、それほどでもない、平凡、高い、最高」というラベルを追加します。次に、「print()」に「Random_df」を再度入れます。


すべてのビンにラベルが付けられ、この結果に表示されます。 「R_age_qcut」列は、ラベル付きビンが表示されるこの DataFrame に表示されます。



例 # 02

DataFrame を作成するには、まず「3、6、8、7、2、5、1、9、4、7、および 8」の「グレード」を追加します。次に、「学生」に学生の名前を追加します。これは、「ピーター、ブロムリー、ジェームズ、デビッド、アリーズ、ジョン、ジェームズ、サミュエル、ウィリアム、ハワード、アレクサンダー」です。次に、「pd.DataFrame()」メソッドを追加した「Grades_df」を生成し、このメソッドで、列名として表示される「Std_name」を入れ、これに「students」の値を割り当てます。次に、「Students_grades」を DataFrame の列名として設定し、ここで上で作成した「grades」も割り当てます。この後、印刷用に「Grades_df」を追加する「print()」があります。


このコードの結果には、2 つの列を含む DataFrame が表示されます。ここで、「qcut()」メソッドを「Students_grades」列に適用して、この列の値のデータをビニングします。


ここで、「pd.qcut()」を「Students_grades」列に適用した新しい列「成績」を追加します。また、「q」の値に「4」を使用したため、カットされます。データを 4 つの等しい分位数に分割します。この後、「q」に「0、.4、.8、および 1」の値を配置して、これらの分位数を指定します。次に、これも表示します。ここで、これらのビニングされたデータにラベルを付けています。ここで追加するラベルは「D、C、A、および B」であり、「グレード」列にも保存されます。


ここで、ビニング後のデータは「成績」列に表示され、「Students_grades」列のデータを 4 つの等しい分位数にカットします。


「qcut()」メソッドを適用し、変位値を指定した後に取得した DataFrame が、この結果に表示されます。


これらのビンにラベルを追加すると、この結果の「成績」列にもレンダリングされ、ビンの値に従ってラベルが割り当てられていることがわかります。

例 # 03

「qcut()」メソッドを CSV ファイルのデータに適用することもできます。このために、まず「read_csv()」メソッドを使用して CSV ファイルのデータを読み取ります。 「office2.csv」ファイルのデータを読み取り、このファイルのデータを「Office_df」に配置します。このメソッドは、「office2」ファイルのデータを DataFrame に変換し、「Office_df」に保存します。次に、「Office_df」を「print()」に入れて、このデータも表示します。この後、「Units_qcut」という新しい列を追加し、関数「pd.qcut()」を「Units」列に適用します。

さらに、「q」変数の値を「5」に設定します。これにより、データが 5 つの等しい分位数に分割されます。データは 5 つの等しい分位数に分割された後、「Units_qcut」列に格納され、この列も「Office_df」に追加され、「Office_df」はここで「print()」を使用して再度レンダリングされます。これらのビニングされたデータにラベルを付け、「qcut()」メソッドで「ユニット 1、ユニット 2、ユニット 3、ユニット 4、ユニット 5」というラベルを追加し、「ラベル」列にも保存します。 . 「Labels」列が追加されたこの DataFrame もレンダリングします。


「office2.csv」ファイルを読み取った後に取得するデータは、ここで DataFrame の形式でレンダリングされます。次に、「Units_qcut」列が追加され、「Units」列のビニングされた値が表示されます。この後、「ラベル」列も追加され、これらのビニングされた値にラベルが割り当てられます。これはすべて、「pandas」の「qcut()」メソッドを使用して行われます。

結論

このチュートリアルでは、「pandas」のデータをビニングするのに役立つ「qcut()」メソッドについて詳しく説明しました。 「qcut()」メソッドで追加した分位「q」値に従ってデータがビニングされることを説明し、これらのビニングされたデータにラベルを調整しました。 「qcut()」メソッドを調査し、このメソッドを DataFrame の列に適用しました。また、この「qcut()」メソッドを CSV ファイルの読み取り後に CSV ファイルのデータに適用しました。このチュートリアルでは、「qcut()」メソッドの結果を明確に説明して示すために、すべてのコードの結果を提示しました。