ロングフォーマットからワイドフォーマットまでのデータフレーム

ダビデ

次のデータフレームが与えられた

df <-  structure(list(Group = c("A", "A", "B", "B", "C", "C", "D", "D", 
"E", "E"), TEST_A = c("neg", "neg", "neg", "neg", "neg", "neg", 
"neg", "pos", "pos", "neg"), TEST_B = c("neg", "neg", "neg", 
"neg", "neg", "neg", "neg", "neg", "neg", "neg"), RESULT_NOW = c(0L, 
0L, 0L, NA, 0L, 0L, 0L, 0L, 0L, 0L), RESULTS_BEFORE = c(0L, 0L, 
0L, NA, 0L, 0L, 0L, 0L, 0L, 0L)), row.names = c(NA, 10L), class = "data.frame")

次のように見えます:

> df

    Group TEST_A TEST_B RESULT_NOW RESULTS_BEFORE
1      A    neg    neg          0              0
2      A    neg    neg          0              0
3      B    neg    neg          0              0
4      B    neg    neg         NA             NA
5      C    neg    neg          0              0
6      C    neg    neg          0              0
7      D    neg    neg          0              0
8      D    pos    neg          0              0
9      E    pos    neg          0              0
10     E    neg    neg          0              0

次のデータフレームを作成したいと思います。

Group TEST_A_1 TEST_A_2 TEST_B_1 TEST_B_1 RESULT_NOW_1  RESULT_NOW_2 RESULTS_BEFORE_1 RESULTS_BEFORE_2
    A   neg        neg     neg     neg       0              0            0         0
    B   neg        neg     neg     neg       0              NA           0        NA
    C   neg        neg     neg     neg       0              0            0         0
    ...
    E   pos        neg     neg     neg       0              0            0         0
   

したがって、実際には、[グループ]列を使用してデータフレームをワイドフォーマットに移動します。グループ列には、グループごとに最大4行を含めることができることに注意してください。この例では、グループごとに2行しかありません。ご協力いただきありがとうございます。

ステファン

秘訣は、最初にid列を追加することです。2番目のステップでは、簡単に適用tidyr::pivot_widerして目的の結果を得ることができます

df <-  structure(list(Group = c("A", "A", "B", "B", "C", "C", "D", "D", 
                                "E", "E"), TEST_A = c("neg", "neg", "neg", "neg", "neg", "neg", 
                                                      "neg", "pos", "pos", "neg"), TEST_B = c("neg", "neg", "neg", 
                                                                                              "neg", "neg", "neg", "neg", "neg", "neg", "neg"), RESULT_NOW = c(0L, 
                                                                                                                                                               0L, 0L, NA, 0L, 0L, 0L, 0L, 0L, 0L), RESULTS_BEFORE = c(0L, 0L, 
                                                                                                                                                                                                                       0L, NA, 0L, 0L, 0L, 0L, 0L, 0L)), row.names = c(NA, 10L), class = "data.frame")

library(dplyr)
library(tidyr)

df %>% 
  group_by(Group) %>% 
  mutate(id = row_number(Group)) %>%
  ungroup() %>% 
  pivot_wider(names_from = id, values_from = c(TEST_A, TEST_B, RESULT_NOW, RESULTS_BEFORE))
#> # A tibble: 5 x 9
#>   Group TEST_A_1 TEST_A_2 TEST_B_1 TEST_B_2 RESULT_NOW_1 RESULT_NOW_2
#>   <chr> <chr>    <chr>    <chr>    <chr>           <int>        <int>
#> 1 A     neg      neg      neg      neg                 0            0
#> 2 B     neg      neg      neg      neg                 0           NA
#> 3 C     neg      neg      neg      neg                 0            0
#> 4 D     neg      pos      neg      neg                 0            0
#> 5 E     pos      neg      neg      neg                 0            0
#> # ... with 2 more variables: RESULTS_BEFORE_1 <int>, RESULTS_BEFORE_2 <int>

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

データフレームでロングフォーマットからワイドフォーマットにピボットする

分類Dev

Rデータフレームをロングフォーマットからワイドフォーマットに再形成しますか?

分類Dev

ロングフォーマットデータフレームで列名なしのメルトを使用してワイドフォーマットからロングフォーマットに変換する

分類Dev

データをロングフォーマットからワイドフォーマットに再構築

分類Dev

PostgreSQL-ロングフォーマットからワイドフォーマットまで

分類Dev

Rでのロングフォーマットからワイドフォーマット、ロングフォーマットの難しさ

分類Dev

Rでデータをロングフォーマットからワイドフォーマットに再形成する際の問題

分類Dev

SQLサーバーとデータフレームでワイドフォーマットからロングフォーマットに変換する場合、約1000列あります-最適化

分類Dev

データフレームの次のワイドフォーマットからロングフォーマットへの変換を行うための良い方法はありますか?

分類Dev

Rでデータセットをワイドフォーマットからロングフォーマットに転置する方法

分類Dev

ワイドフォーマットからロングフォーマットのパンダ

分類Dev

Pythonの複数列のロングフォーマットからワイドフォーマット

分類Dev

ワイドデータフレームをロングフォーマットに再形成

分類Dev

H2Oでロングフォーマットからワイドフォーマットにデータをキャストする方法は?

分類Dev

Excelでデータをワイドフォーマットからロングフォーマットに再形成/再キャストする方法

分類Dev

倍数のロングフォーマットからワイドフォーマット

分類Dev

ロングフォーマットからワイドフォーマットへの変換

分類Dev

ロングフォーマットからワイドフォーマットへの変換

分類Dev

カウントのあるワイドデータフレームをRのロングフォーマットに変換します

分類Dev

マルチインデックス付きのロングフォーマットからワイドフォーマットのパンダ

分類Dev

Python Pandas:ワイドフォーマットからロングフォーマットですが、異なる-ダミー列の逆に似ています

分類Dev

カテゴリデータからロングフォーマットからワイドフォーマットに変換

分類Dev

ワイドフォーマットからロングフォーマットまで、複数の列に結果が表示されます

分類Dev

ロングフォーマットからワイドフォーマットへの変換では、時間識別子の行が重複します

分類Dev

data.frameをワイドフォーマットからロングフォーマットに再形成

分類Dev

SQLロングフォーマットからワイドフォーマット

分類Dev

GroupByを使用したロングフォーマットからワイドフォーマット

分類Dev

Rロングフォーマットからワイドフォーマットに変換する方法

分類Dev

HRSデータをワイドフォーマットからロングフォーマットに再形成し、時間変数を作成する

Related 関連記事

  1. 1

    データフレームでロングフォーマットからワイドフォーマットにピボットする

  2. 2

    Rデータフレームをロングフォーマットからワイドフォーマットに再形成しますか?

  3. 3

    ロングフォーマットデータフレームで列名なしのメルトを使用してワイドフォーマットからロングフォーマットに変換する

  4. 4

    データをロングフォーマットからワイドフォーマットに再構築

  5. 5

    PostgreSQL-ロングフォーマットからワイドフォーマットまで

  6. 6

    Rでのロングフォーマットからワイドフォーマット、ロングフォーマットの難しさ

  7. 7

    Rでデータをロングフォーマットからワイドフォーマットに再形成する際の問題

  8. 8

    SQLサーバーとデータフレームでワイドフォーマットからロングフォーマットに変換する場合、約1000列あります-最適化

  9. 9

    データフレームの次のワイドフォーマットからロングフォーマットへの変換を行うための良い方法はありますか?

  10. 10

    Rでデータセットをワイドフォーマットからロングフォーマットに転置する方法

  11. 11

    ワイドフォーマットからロングフォーマットのパンダ

  12. 12

    Pythonの複数列のロングフォーマットからワイドフォーマット

  13. 13

    ワイドデータフレームをロングフォーマットに再形成

  14. 14

    H2Oでロングフォーマットからワイドフォーマットにデータをキャストする方法は?

  15. 15

    Excelでデータをワイドフォーマットからロングフォーマットに再形成/再キャストする方法

  16. 16

    倍数のロングフォーマットからワイドフォーマット

  17. 17

    ロングフォーマットからワイドフォーマットへの変換

  18. 18

    ロングフォーマットからワイドフォーマットへの変換

  19. 19

    カウントのあるワイドデータフレームをRのロングフォーマットに変換します

  20. 20

    マルチインデックス付きのロングフォーマットからワイドフォーマットのパンダ

  21. 21

    Python Pandas:ワイドフォーマットからロングフォーマットですが、異なる-ダミー列の逆に似ています

  22. 22

    カテゴリデータからロングフォーマットからワイドフォーマットに変換

  23. 23

    ワイドフォーマットからロングフォーマットまで、複数の列に結果が表示されます

  24. 24

    ロングフォーマットからワイドフォーマットへの変換では、時間識別子の行が重複します

  25. 25

    data.frameをワイドフォーマットからロングフォーマットに再形成

  26. 26

    SQLロングフォーマットからワイドフォーマット

  27. 27

    GroupByを使用したロングフォーマットからワイドフォーマット

  28. 28

    Rロングフォーマットからワイドフォーマットに変換する方法

  29. 29

    HRSデータをワイドフォーマットからロングフォーマットに再形成し、時間変数を作成する

ホットタグ

アーカイブ