Rはデータフレームを再配置します:いくつかの行を列に

crs

質問に適切なタイトルを付ける方法すらわかりません。

データフレームdがあるとします。

現在のデータフレーム:

d <- data.frame(sample = LETTERS[1:2], cat = letters[11:20], count = c(1:10))

   sample cat count
1       A   k     1
2       B   l     2
3       A   m     3
4       B   n     4
5       A   o     5
6       B   p     6
7       A   q     7
8       B   r     8
9       A   s     9
10      B   t    10

そして、各猫の値が独自の列になり、サンプルが列のままになり(または行名になり)、カウントが新しい猫の列の値になり、0が0になるように再配置しようとしています。サンプルには猫の数がありません。そのようです:

必要なデータフレームレイアウト:

   sample   k   l   m   n   o   p   q   r   s   t
1       A   1   0   3   0   5   0   7   0   9   0
2       B   0   2   0   4   0   6   0   8   0  10

これについて行くための最良の方法は何ですか?

これは私が得た限りです:

for (i in unique(d$sample)) {
    s <- d[d$sample==i,]
    st <- as.data.frame(t(s[,3]))
    colnames(st) <- s$cat
    rownames(st) <- i
} 

つまり、元のデータフレーム内のサンプルをループし、サンプルサブセットごとに転置します。だからこの場合私は得る

   k m o q s
 A 1 3 5 7 9

そして

   l n p r  t
 B 2 4 6 8 10

そして、これは私が立ち往生しているところです。私はmerge()、bind()、apply()などでたくさんのことを試しましたが、正しいことを思いつかないようです。さらに、上記のループが必要なステップであるかどうか疑問に思わずにはいられません-おそらくunstack()を使用したものですか?

言うまでもなく、私はRに不慣れです...誰かが私を助けてくれるなら、それは大いにありがたいです!

PS Reasonデータフレームを再配置しようとしているのは、値のプロットを簡単にすることを目的としています(つまり、実際のdfをテーブル形式でプロットに表示したい)。

ありがとうございました!

指標

reshapeベースRからの使用

nn<-reshape(d,timevar="cat",idvar="sample",direction="wide")
names(nn)[-1]<-as.character(d$cat)
nn[is.na(nn)]<-0
> nn
  sample k l m n o p q r s  t
1      A 1 0 3 0 5 0 7 0 9  0
2      B 0 2 0 4 0 6 0 8 0 10

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

Rはデータフレームを再配置します:いくつかの列アイテムをリストに入れます

分類Dev

R-データフレーム内のデータを2列でグループ化し、新しいデータフレームに再配置します

分類Dev

データフレームの行を再配置します

分類Dev

データフレームの行を再配置します

分類Dev

R:ランクに基づいてデータフレームの列を再配置します

分類Dev

1つの列の値が行名になるようにデータフレームを再配置するにはどうすればよいですか?

分類Dev

データを1つの列から1つの行に再配置します

分類Dev

データフレームの行を交互に再配置します

分類Dev

Python:Pandasデータフレームは、列の整数の最後の3桁に基づいて行を再配置します

分類Dev

Rのデータフレームの行を再配置する

分類Dev

データフレームのリストからRの配列にデータを効率的に再配置しますか?

分類Dev

データフレームの行をいくつかの因子列にバインドします

分類Dev

データフレームを再配置しますか?

分類Dev

kerascnnのデータフレーム行の内容を再配置します

分類Dev

パンダ:データフレームの行を分割し、列の値を再配置します

分類Dev

Rデータフレーム変換:文字観測を複数の行に分割し、文字列を再配置します

分類Dev

パンダ:データフレームを再配置せずに2行のデータフレームを合計しますか?

分類Dev

複数列のデータフレームを再配置します

分類Dev

Rで行の値が一致するようにデータフレームの2つの列を再配置するにはどうすればよいですか?

分類Dev

データフレームの列を再配置するためのこのRコードに相当するPython /パンダは何でしょうか?

分類Dev

別のデータフレームインデックスからの日と月に基づいてデータフレームを再配置します

分類Dev

Rデータフレームの異なる列の値を再配置するにはどうすればよいですか

分類Dev

Rのデータフレームで2つの列が等しくない行の値を抽出します

分類Dev

行データを1つのデータフレームから別のデータフレームへと列状に配置します

分類Dev

JSON構造をPythonのデータフレームに再配置します

分類Dev

R:拡張された方法でデータフレームから列を再配置します

分類Dev

Pysparkは、古いデータフレームからいくつかの列を更新して新しいデータフレームを作成します

分類Dev

Rのデータを2列ではなく特定の列の内容に再配置します1

分類Dev

文字列を分割し、データフレームを再配置します

Related 関連記事

  1. 1

    Rはデータフレームを再配置します:いくつかの列アイテムをリストに入れます

  2. 2

    R-データフレーム内のデータを2列でグループ化し、新しいデータフレームに再配置します

  3. 3

    データフレームの行を再配置します

  4. 4

    データフレームの行を再配置します

  5. 5

    R:ランクに基づいてデータフレームの列を再配置します

  6. 6

    1つの列の値が行名になるようにデータフレームを再配置するにはどうすればよいですか?

  7. 7

    データを1つの列から1つの行に再配置します

  8. 8

    データフレームの行を交互に再配置します

  9. 9

    Python:Pandasデータフレームは、列の整数の最後の3桁に基づいて行を再配置します

  10. 10

    Rのデータフレームの行を再配置する

  11. 11

    データフレームのリストからRの配列にデータを効率的に再配置しますか?

  12. 12

    データフレームの行をいくつかの因子列にバインドします

  13. 13

    データフレームを再配置しますか?

  14. 14

    kerascnnのデータフレーム行の内容を再配置します

  15. 15

    パンダ:データフレームの行を分割し、列の値を再配置します

  16. 16

    Rデータフレーム変換:文字観測を複数の行に分割し、文字列を再配置します

  17. 17

    パンダ:データフレームを再配置せずに2行のデータフレームを合計しますか?

  18. 18

    複数列のデータフレームを再配置します

  19. 19

    Rで行の値が一致するようにデータフレームの2つの列を再配置するにはどうすればよいですか?

  20. 20

    データフレームの列を再配置するためのこのRコードに相当するPython /パンダは何でしょうか?

  21. 21

    別のデータフレームインデックスからの日と月に基づいてデータフレームを再配置します

  22. 22

    Rデータフレームの異なる列の値を再配置するにはどうすればよいですか

  23. 23

    Rのデータフレームで2つの列が等しくない行の値を抽出します

  24. 24

    行データを1つのデータフレームから別のデータフレームへと列状に配置します

  25. 25

    JSON構造をPythonのデータフレームに再配置します

  26. 26

    R:拡張された方法でデータフレームから列を再配置します

  27. 27

    Pysparkは、古いデータフレームからいくつかの列を更新して新しいデータフレームを作成します

  28. 28

    Rのデータを2列ではなく特定の列の内容に再配置します1

  29. 29

    文字列を分割し、データフレームを再配置します

ホットタグ

アーカイブ