パンダデータフレームで欠落している行の数をユーザーインデックスでカウントします

hedebyhedge
user   cat  val1  val2  val3
user1  cat1   3    NA     NA
       cat2   NA   NA     NA
       cat3   NA   NA     5
user2  cat1   NA   NA     NA
       cat2   NA   6      NA
       cat3   NA   NA     7
user3  cat1   4    NA     NA
       cat2   NA   NA     NA
       cat3   NA   NA     NA

このデータフレームdfでは、userとcatがインデックスです。ユーザーごとに繰り返し、各ユーザーごとにすべてのNA値を持つ行数を数えたいと思います。(cat1はval1などに対応します)

この例では、user1とuser2に1つの欠落行があり、user3に2つの欠落行があります。

編集:答えはかなり下に提供されました。

dfをフィルタリングして、値が欠落していないユーザーのみが表示されるようにするための最良の方法は何ですか。

私が持っています:

s[s == 0].index

これはインデックスを提供します(以下はそれです;上記のデータフレームは単なる一般的なdfでした)

Index([25c90900-cd25-4f51-8634-3eba9821e167,
   29b63a9d-3a60-4d69-b507-145977b0dc49,
   843a997d-5446-41d1-8697-4ded33bba85d,
   690d0511-232c-4bd9-98ae-c9bb101bc18b,
   35a2dabb-ac20-48cb-8d1e-adf53c68d546,
   859591fd-67fc-41b3-823b-33053dbccc47,
   7b8a4cfb-3010-4bc3-9963-14f2b4f6ffdb,
   266f5f1f-0a58-49ca-9e66-7e8d2058a836,
   77b99c57-f37b-48d5-b8b9-68929f31d3fc,
   47afb3d3-98bb-4486-8935-a0b57a2de0c6,
   ...
   e14e69f6-3e33-4d1f-beff-76a35c2e11e9,
   e81c9737-e632-460a-9a12-c6bc7b48341b,
   c63ddb6e-2d89-4188-97c0-794aab70a816,
   4c4a259c-7121-41c7-8e15-f8b87071489a,
   a612b6ee-4143-44a6-9214-81e607d4c9c3,
   9d95839e-94c6-4659-ab88-95159e3a1238,
   04826220-c5eb-4042-a355-217526aed323,
   6054dd2d-9298-49b9-8617-3e156459ab2d,
   3d8aeb80-7473-4d4c-90e6-8603133a7c65,
   0aa7ac36-0274-48ba-86e6-f807645e0559],
  dtype='object', name='uuid', length=2217)
ジェズリール

使用する:

s = df.isnull().all(axis=1).sum(level=0)
print (s)
user
user1    1.0
user2    1.0
user3    2.0
dtype: float64

必要に応じてDataFrame

df1 = df.isnull().all(axis=1).sum(level=0).astype(int).reset_index(name='count')
print (df1)
    user  count
0  user1      1
1  user2      1
2  user3      2

説明

まずNaN、すべての列のs値を確認します。

print (df.isnull())
             val1   val2   val3
user  cat                      
user1 cat1  False   True   True
      cat2   True   True   True
      cat3   True   True  False
user2 cat1   True   True   True
      cat2   True  False   True
      cat3   True   True  False
user3 cat1  False   True   True
      cat2   True   True   True
      cat3   True   True   True

次に、次の方法ですべての行のすべてTrue行を確認しますDataFrame.all

print (df.isnull().all(axis=1))
user   cat 
user1  cat1    False
       cat2     True
       cat3    False
user2  cat1     True
       cat2    False
       cat3    False
user3  cat1    False
       cat2     True
       cat3     True
dtype: bool

そしてsumブールTrueのようなS1によって秒sum

print (df.isnull().all(axis=1).sum(level=0))
user
user1    1.0
user2    1.0
user3    2.0
dtype: float64

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してくださいdebugcn@gmail.com

編集
0

コメントを追加

0

関連記事

分類Dev

インデックスで2つのパンダデータフレームをマージするが、欠落している値を埋める方法

分類Dev

欠落しているデータと数値以外のデータをカウントし、パンダでプロットする方法

分類Dev

Pythonパンダデータフレーム:データフレームのみで欠落している値の数をカウントして表示する方法は?

分類Dev

特定の番号/テキストがマルチインデックスパンダデータフレームのインデックスから欠落しているかどうかを確認するにはどうすればよいですか?

分類Dev

Pythonパンダデータフレームの欠落している行を繰り返しパターンで埋めます

分類Dev

「欠落している」マルチインデックス行をパンダデータフレームに挿入する

分類Dev

パンダデータフレーム:グループ内のサイクルで欠落している値を埋める方法はありますか?

分類Dev

パンダのデータフレームを拡張して、「欠落している」週を含めます

分類Dev

パンダ:インデックスと欠落値が異なる2つのデータフレームをマージします

分類Dev

パンダのデータフレームで欠落しているタイムスタンプを段階的に埋める方法は?

分類Dev

欠落している日付インデックスをデータフレームに追加する

分類Dev

欠落しているインデックスをデータフレームに追加する

分類Dev

インデックスが欠落しているデータフレームを連結する方法

分類Dev

日付インデックスと欠落している日付を含むPandasデータフレームで次の日付を選択する方法

分類Dev

インデックスに重複データが含まれている場合に、パンダDataFrameの欠落している行を追加する

分類Dev

パンダ:データが欠落している行の数

分類Dev

インデックスの条件で欠落しているデータを「無視」します

分類Dev

欠落している行をデータフレームに挿入します(可変インデックス範囲)

分類Dev

欠落している行をデータフレームに挿入します(可変インデックス範囲)

分類Dev

パンダのデータフレームを更新し、パターンを考慮して欠落している行を追加する

分類Dev

マルチインデックスパンダデータフレームに欠落したインデックスを追加する

分類Dev

ダウンロードしたビデオストリームで欠落しているキーフレームを修復する

分類Dev

パンダは複合インデックスでデータフレームの行番号を取得します

分類Dev

パンダは範囲からデータフレームに欠落している週を追加します

分類Dev

同様の行を使用して、Pythonパンダデータフレームの欠落している行を埋めます

分類Dev

パンダ-2つのデータフレームを日付で比較し、欠落している全体を見つけます

分類Dev

マルチインデックスパンダデータフレームの式で他の変数を使用して新しい変数を作成する

分類Dev

パンダ:データフレーム内の同じ値のインデックスペアワイズオカレンスをカウントします

分類Dev

パンダのデータフレーム内の間隔の日付で欠落している観測値を埋めます

Related 関連記事

  1. 1

    インデックスで2つのパンダデータフレームをマージするが、欠落している値を埋める方法

  2. 2

    欠落しているデータと数値以外のデータをカウントし、パンダでプロットする方法

  3. 3

    Pythonパンダデータフレーム:データフレームのみで欠落している値の数をカウントして表示する方法は?

  4. 4

    特定の番号/テキストがマルチインデックスパンダデータフレームのインデックスから欠落しているかどうかを確認するにはどうすればよいですか?

  5. 5

    Pythonパンダデータフレームの欠落している行を繰り返しパターンで埋めます

  6. 6

    「欠落している」マルチインデックス行をパンダデータフレームに挿入する

  7. 7

    パンダデータフレーム:グループ内のサイクルで欠落している値を埋める方法はありますか?

  8. 8

    パンダのデータフレームを拡張して、「欠落している」週を含めます

  9. 9

    パンダ:インデックスと欠落値が異なる2つのデータフレームをマージします

  10. 10

    パンダのデータフレームで欠落しているタイムスタンプを段階的に埋める方法は?

  11. 11

    欠落している日付インデックスをデータフレームに追加する

  12. 12

    欠落しているインデックスをデータフレームに追加する

  13. 13

    インデックスが欠落しているデータフレームを連結する方法

  14. 14

    日付インデックスと欠落している日付を含むPandasデータフレームで次の日付を選択する方法

  15. 15

    インデックスに重複データが含まれている場合に、パンダDataFrameの欠落している行を追加する

  16. 16

    パンダ:データが欠落している行の数

  17. 17

    インデックスの条件で欠落しているデータを「無視」します

  18. 18

    欠落している行をデータフレームに挿入します(可変インデックス範囲)

  19. 19

    欠落している行をデータフレームに挿入します(可変インデックス範囲)

  20. 20

    パンダのデータフレームを更新し、パターンを考慮して欠落している行を追加する

  21. 21

    マルチインデックスパンダデータフレームに欠落したインデックスを追加する

  22. 22

    ダウンロードしたビデオストリームで欠落しているキーフレームを修復する

  23. 23

    パンダは複合インデックスでデータフレームの行番号を取得します

  24. 24

    パンダは範囲からデータフレームに欠落している週を追加します

  25. 25

    同様の行を使用して、Pythonパンダデータフレームの欠落している行を埋めます

  26. 26

    パンダ-2つのデータフレームを日付で比較し、欠落している全体を見つけます

  27. 27

    マルチインデックスパンダデータフレームの式で他の変数を使用して新しい変数を作成する

  28. 28

    パンダ:データフレーム内の同じ値のインデックスペアワイズオカレンスをカウントします

  29. 29

    パンダのデータフレーム内の間隔の日付で欠落している観測値を埋めます

ホットタグ

アーカイブ