パンダのデータ分析インタビューの基本的な質問(8)

オファーが届きました。友達を掘って受け取りましょう!私は2022年春の採用チェックインイベントに参加しています。クリックしてイベントの詳細を表示します。

並べ替えは、データ分析の非常に基本的な要件です。この記事では、データフレームデータの並べ替えについて説明します。

質問:DataFrameデータを並べ替える方法は?

(難易度:中)

分析データフレームは、次の2つの方法で並べ替えることができます。

  • タグで並べ替え
  • 実際の値で並べ替え

ラベルで並べ替えるメソッド
を使用して、パラメーターで行ラベルまたは列ラベルを指定し、パラメーターで昇順または降順を指定します。デフォルトでは、行ラベルは昇順でソートされます。具体的な使用法は次のとおりです。sort_index()axisascending

# 按行标签排序
sort_df = df.sort_index()
sort_df
# 按行标签降序排序
sort_df = df.sort_index(ascending=False)
sort_df
# 按列标签排列
sort_df = df.sort_index(axis=1)
sort_df
# 按列标签降序排列
sort_df = df.sort_index(axis=1, ascending=False)
sort_df
复制代码

実際の値で並べ替えるメソッドは、値で並べ替えることができ、並べ替える列名を指定するパラメーターを
sort_values()受け入れます。by形式は次のとおりです。

DataFrame.sort_values(by, axis=0, ascending=True, inplace=False)
复制代码
  • axis:デフォルトが0の場合は垂直方向の並べ替えを意味し、axis=1の場合は水平方向の並べ替えを意味します。

  • by:文字列またはリスト。ソートする行または列の名前を示します。

  • ascending:デフォルトはTrueの昇順で、[True、False]と同様の形式で、最初のフィールドが昇順で2番目のフィールドが降順であることを示しますが、byの内容に対応している必要があります。

  • inplace:元の値を上書きするかどうか。

# 按score的值进行升序排序
sort_df = df.sort_values(by='score')
sort_df
# 先按class的值升序排序,一样再按score的值降序排序
sort_df = df.sort_values(by=['class','score'], ascending=[True,False])
sort_df
复制代码

結果の出力は次のとおりです。

      id | name  | score | class |
| - | -- | ----- | ----- | ----- |
| 0 | 1  | one   | 90    | 1     |
| 1 | 2  | two   | 88    | 1     |
| 2 | 3  | three | 89    | 2     |
| 3 | 4  | four  | 65    | 2     |
| 4 | 5  | five  | 95    | 3     |
复制代码

拡張機能:データフレームデータを垂直方向に並べ替えた後、行インデックスの順序が正しくない場合は、このreset_index()メソッドを使用して数値をリセットできます。

sort_df = sort_df.reset_index(drop=True)
sort_df
复制代码

オリジナルになるのは簡単ではありません。もしあなたがそれが役に立ったと思ったら、いいねをして行ってください〜

最後に、私のガールフレンドの仕事と生活における寛容、理解、サポートに感謝します!

おすすめ

転載: juejin.im/post/7077841786525188110