データフレームのリストで数値(n> 3)をフィルタリングする方法は?

ジェリー・チェン
movie_id    user_id      rating
0   1   [5, 2, 1, 6]    [4, 4, 5, 4]
1   2   [5, 1]          [3, 3]
2   3   [1]             [4]
3   4   [1]             [3]
4   5   [1]             [3]
5   6   [1]             [5]
6   7   [6, 1]          [2, 4]
7   8   [1, 6]          [1, 4]
8   9   [1, 6]          [5, 4]

各行で3より大きい「評価」の数値の数を取得しようとしています。たとえば、[4、4、5、5] => 4 / [3、3] => 0です。

これが私がこれまでにしたことです:

appr = df.copy()

appr['approval'] = appr['rating'].map(Counter)
appr

そしてそれは出力します:

    movie_id    user_id   rating        approval
0   1        [5, 2, 1, 6][4, 4, 5, 4]   {4: 3, 5: 1}
1   2        [5, 1]      [3, 3]         {3: 2}
2   3        [1]         [4]            {4: 1}
3   4        [1]         [3]            {3: 1}
4   5        [1]         [3]            {3: 1}
5   6        [1]         [5]            {5: 1}
6   7        [6, 1]      [2, 4]         {2: 1, 4: 1}
7   8        [1, 6]      [1, 4]         {1: 1, 4: 1}
8   9        [1, 6]      [5, 4]         {5: 1, 4: 1}

私の目標は、各行の「評価」で3以下の数値をフィルタリングし、それらの発生を合計することです。

    movie_id    user_id   rating        approval       appr_sum
0   1        [5, 2, 1, 6][4, 4, 5, 4]   {4: 3, 5: 1}   4
1   2        [5, 1]      [3, 3]         {3: 2}         0
2   3        [1]         [4]            {4: 1}         1
3   4        [1]         [3]            {3: 1}         0
4   5        [1]         [3]            {3: 1}         0
5   6        [1]         [5]            {5: 1}         1
6   7        [6, 1]      [2, 4]         {2: 1, 4: 1}   1
7   8        [1, 6]      [1, 4]         {1: 1, 4: 1}   1
8   9        [1, 6]      [5, 4]         {5: 1, 4: 1}   2

私はもう試した :

s = appr['rating'].map

t = [x for x in s if x > 3]
t

しかし、TypeError: 'メソッド'オブジェクトは反復可能ではなく、コードのこの部分が正しく出てきた場合、それらの発生を合計していません。

ジェズリール

フィルタリングとネストされたリスト内包表記を使用しますsum

appr['appr_sum'] = [sum(v for k, v in x.items() if k > 3) for x in appr['approval']]
print (appr)
   movie_id       user_id        rating      approval  appr_sum
0         1  [5, 2, 1, 6]  [4, 4, 5, 4]  {4: 3, 5: 1}         4
1         2        [5, 1]        [3, 3]        {3: 2}         0
2         3           [1]           [4]        {4: 1}         1
3         4           [1]           [3]        {3: 1}         0
4         5           [1]           [3]        {3: 1}         0
5         6           [1]           [5]        {5: 1}         1
6         7        [6, 1]        [2, 4]  {2: 1, 4: 1}         1
7         8        [1, 6]        [1, 4]  {1: 1, 4: 1}         1
8         9        [1, 6]        [5, 4]  {5: 1, 4: 1}         2

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

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

タイプリストの列の値でデータフレームをフィルタリングする

分類Dev

pysparkの辞書リストの値でデータフレームをフィルタリングする

分類Dev

リスト内の値でデータフレームをフィルタリングする

分類Dev

特定の条件で pandas データフレームの列値をフィルタリングする方法は?

分類Dev

複数の条件でデータフレームをフィルタリングする方法は?

分類Dev

複数の条件でデータフレームをフィルタリングする方法は?

分類Dev

パンダのデータフレーム行を複数の列値でフィルタリングする

分類Dev

Rデータフレームの値をフィルタリングしてコピーする方法は?

分類Dev

外部リストの値に基づいてパンダのデータフレームをフィルタリングする方法は?

分類Dev

リスト上の複数のデータフレーム列をフィルタリングする

分類Dev

Rのデータフレーム内のリストの値をフィルタリングするにはどうすればよいですか?

分類Dev

リストを使用してPandasデータフレームをフィルタリングする最速の方法

分類Dev

パンダ、列の値でデータフレームをフィルタリングする方法

分類Dev

データフレームのリストを別のデータフレームのリストでフィルタリングする

分類Dev

複数の条件でデータフレームインデックスをフィルタリングする

分類Dev

値の数でデータフレームをフィルタリングする

分類Dev

SparkデータフレームのMapTypeフィールドをフィルタリングする方法は?

分類Dev

複数の列でパンダデータフレームをフィルタリングする方法

分類Dev

パンダのデータフレームをリストでフィルタリングする

分類Dev

パンダのデータフレームを文字列でフィルタリングする方法は?

分類Dev

複数のリストを持つデータフレームから値をフィルタリングするためのforループの置き換え

分類Dev

ネストされたデータフレーム(リスト列)をpurrrを使用してリスト内の値でフィルタリングする

分類Dev

R:データフレームの列をリストで「フィルタリング」する

分類Dev

各データフレームの観測数に基づいてデータフレームのリストをフィルタリングする

分類Dev

Sparkでデータフレームをフィルタリングするための効率的な方法は?

分類Dev

Android-複数の値でリストビューをフィルタリングする方法は?

分類Dev

列の値がリストの値と等しいパンダデータフレームの行をフィルタリングする方法

分類Dev

データのリストに関してデータフレームをフィルタリングする

分類Dev

mlr3タスクデータセットを機能値でフィルタリングする方法

Related 関連記事

  1. 1

    タイプリストの列の値でデータフレームをフィルタリングする

  2. 2

    pysparkの辞書リストの値でデータフレームをフィルタリングする

  3. 3

    リスト内の値でデータフレームをフィルタリングする

  4. 4

    特定の条件で pandas データフレームの列値をフィルタリングする方法は?

  5. 5

    複数の条件でデータフレームをフィルタリングする方法は?

  6. 6

    複数の条件でデータフレームをフィルタリングする方法は?

  7. 7

    パンダのデータフレーム行を複数の列値でフィルタリングする

  8. 8

    Rデータフレームの値をフィルタリングしてコピーする方法は?

  9. 9

    外部リストの値に基づいてパンダのデータフレームをフィルタリングする方法は?

  10. 10

    リスト上の複数のデータフレーム列をフィルタリングする

  11. 11

    Rのデータフレーム内のリストの値をフィルタリングするにはどうすればよいですか?

  12. 12

    リストを使用してPandasデータフレームをフィルタリングする最速の方法

  13. 13

    パンダ、列の値でデータフレームをフィルタリングする方法

  14. 14

    データフレームのリストを別のデータフレームのリストでフィルタリングする

  15. 15

    複数の条件でデータフレームインデックスをフィルタリングする

  16. 16

    値の数でデータフレームをフィルタリングする

  17. 17

    SparkデータフレームのMapTypeフィールドをフィルタリングする方法は?

  18. 18

    複数の列でパンダデータフレームをフィルタリングする方法

  19. 19

    パンダのデータフレームをリストでフィルタリングする

  20. 20

    パンダのデータフレームを文字列でフィルタリングする方法は?

  21. 21

    複数のリストを持つデータフレームから値をフィルタリングするためのforループの置き換え

  22. 22

    ネストされたデータフレーム(リスト列)をpurrrを使用してリスト内の値でフィルタリングする

  23. 23

    R:データフレームの列をリストで「フィルタリング」する

  24. 24

    各データフレームの観測数に基づいてデータフレームのリストをフィルタリングする

  25. 25

    Sparkでデータフレームをフィルタリングするための効率的な方法は?

  26. 26

    Android-複数の値でリストビューをフィルタリングする方法は?

  27. 27

    列の値がリストの値と等しいパンダデータフレームの行をフィルタリングする方法

  28. 28

    データのリストに関してデータフレームをフィルタリングする

  29. 29

    mlr3タスクデータセットを機能値でフィルタリングする方法

ホットタグ

アーカイブ