複数のデータフレームでのllply操作

マーク・タラ

次のことを行う簡単な方法はありますか(つまり、「for」ループを使用する必要はありません)。

いくつかのデータフレームがあります。それらを要約するためにplyr操作を使用したいと思います。この例では、東と西の2つのデータフレームがあり、国ごとの支出と試行で両方を要約したいと思います。

データフレームの例は次のとおりです。

west <- data.frame(
    spend = sample(50:100,50,replace=T),
    trials = sample(100:200,50,replace=T),
    country = sample(c("usa","canada","uk"),50,replace = T)
    )

east <- data.frame(
    spend = sample(50:100,50,replace=T),
    trials = sample(100:200,50,replace=T),
    country = sample(c("china","japan","skorea"),50,replace = T)
    )

および両方のデータフレームの組み合わせリスト:

combined <- c(west,east)

私がやりたいのは、これらのデータフレームの両方で同時にddplyタイプの操作を行い、出力をリストにすることです(少なくともそれは最も簡単に思えます)。たとえば、1つのデータフレームで操作している場合、次のようになります。

country.df <- ddply(west, .(country), summarise,
    spend = sum(spend),
    trials = sum(trials)
)

しかし、私はこれを大規模にやりたいと思っています。llply引数で同様の構文を使用しようとしましたが、機能しません(痛々しいほど明白なものが欠けているように感じます):

countries.list <- llply(combined, .(country), summarise,
    spend = sum(spend),
    trials = sum(trials)
)

「FUN(X [[1L]]、...)のエラー:非関数を適用しようとしました」というエラーが返されます。

...関数を記述し、それを適用引数に渡すことで、これを行う方法を考えることができます。しかし、llplyはこの「箱から出して」処理できるはずです。これは、ツールの機能をかなり簡単に使用できるためです。

ここで何が欠けていますか?

川の部分

私はこのようにします:

combined <- list(east, west)

lapply(combined, ddply, .(country), summarise, spend  = sum(spend),
                                               trials = sum(trials))

# [[1]]
#   country spend trials
# 1   china  1572   2976
# 2   japan  1075   1989
# 3  skorea  1262   2526
# 
# [[2]]
#   country spend trials
# 1  canada  1459   3117
# 2      uk   910   1967
# 3     usa  1248   2660

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

Pythonでの複数のデータフレームの操作

分類Dev

データフレームでの複数の操作

分類Dev

パンダのデータフレームで同時に複数の操作

分類Dev

光沢:データフレームを操作し、複数の出力で使用する

分類Dev

データフレームで一度に複数の操作を行う

分類Dev

同じデータフレームでの複数のフィルター操作[パンダ]

分類Dev

複数のIDでのデータフレーム結合

分類Dev

データフレームの複数の列で単一の操作を実行する方法

分類Dev

パンダで複数のデータフレームを操作するエレガントな方法

分類Dev

データフレームを複数の方法で解析する

分類Dev

複数のデータフレームでのddplyタイプの機能

分類Dev

データフレームでのパンダの数値操作 (つまり、max())

分類Dev

ループ/ラップの複数のデータフレームでのgsub()

分類Dev

複数の条件でのパンダデータフレームのマージ

分類Dev

複数の条件でのパンダデータフレームのマージ

分類Dev

Sparkデータフレームの複数の列でのgroupByの代替

分類Dev

複数の説明変数のデータフレームで複数の従属変数のデータフレームを回帰する

分類Dev

Pythonでデータフレームを複数の5秒データフレームに分割する

分類Dev

複数のデータフレームでパンダデータフレームを作成する

分類Dev

データフレームの操作

分類Dev

mutliindexデータフレームの操作

分類Dev

データフレームの操作

分類Dev

Pythonデータフレームの操作

分類Dev

データ フレームの操作

分類Dev

データフレームの複数のシフト

分類Dev

Sparkデータフレーム列でのsha2の複数の反復

分類Dev

データフレームでの複数のスペルの結果1

分類Dev

djangoRESTフレームワークのモデルの複数のタイプの更新操作

分類Dev

Pythonの複数の列のデータフレーム条件

Related 関連記事

  1. 1

    Pythonでの複数のデータフレームの操作

  2. 2

    データフレームでの複数の操作

  3. 3

    パンダのデータフレームで同時に複数の操作

  4. 4

    光沢:データフレームを操作し、複数の出力で使用する

  5. 5

    データフレームで一度に複数の操作を行う

  6. 6

    同じデータフレームでの複数のフィルター操作[パンダ]

  7. 7

    複数のIDでのデータフレーム結合

  8. 8

    データフレームの複数の列で単一の操作を実行する方法

  9. 9

    パンダで複数のデータフレームを操作するエレガントな方法

  10. 10

    データフレームを複数の方法で解析する

  11. 11

    複数のデータフレームでのddplyタイプの機能

  12. 12

    データフレームでのパンダの数値操作 (つまり、max())

  13. 13

    ループ/ラップの複数のデータフレームでのgsub()

  14. 14

    複数の条件でのパンダデータフレームのマージ

  15. 15

    複数の条件でのパンダデータフレームのマージ

  16. 16

    Sparkデータフレームの複数の列でのgroupByの代替

  17. 17

    複数の説明変数のデータフレームで複数の従属変数のデータフレームを回帰する

  18. 18

    Pythonでデータフレームを複数の5秒データフレームに分割する

  19. 19

    複数のデータフレームでパンダデータフレームを作成する

  20. 20

    データフレームの操作

  21. 21

    mutliindexデータフレームの操作

  22. 22

    データフレームの操作

  23. 23

    Pythonデータフレームの操作

  24. 24

    データ フレームの操作

  25. 25

    データフレームの複数のシフト

  26. 26

    Sparkデータフレーム列でのsha2の複数の反復

  27. 27

    データフレームでの複数のスペルの結果1

  28. 28

    djangoRESTフレームワークのモデルの複数のタイプの更新操作

  29. 29

    Pythonの複数の列のデータフレーム条件

ホットタグ

アーカイブ