データフレーム内の要素の数を数える

ジョンジョン

私はこのようなデータフレームを持っています:

mydata
      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13]
 [1,] "-"  "-"  "-"  "-"  "+"  "+"  "-"  "-"  "+"  "-"   "0"   "-"   "0"  
 [2,] "-"  "+"  "-"  "+"  "-"  "-"  "-"  "-"  "+"  "+"   "-"   "+"   NA   
 [3,] "+"  

各行について、「-」または「+」または「0」に従って要素の数を数える方法は?

たとえば、最初の行には「-」に8つの要素があり、最後の行には「+」に1、「-」に0、「0」に0があります。

使用しましたtable(mydata)が、期待した結果が得られません。実際、最後の行では、「+」に1しか与えられませんでした(「-」には0、「0」には0も必要です)

r2evans

あなたはまだtableトリックを使用て使用することができます

いくつかのサンプルデータ:

set.seed(2)
m <- matrix(sample(c('-','+','0'),size=39,replace=TRUE,prob=c(0.45,0.45,0.1)), nrow=3)
m
#      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [,11] [,12] [,13]
# [1,] "+"  "+"  "+"  "-"  "-"  "-"  "+"  "+"  "+"  "+"   "+"   "-"   "-"  
# [2,] "-"  "0"  "-"  "-"  "+"  "0"  "+"  "-"  "-"  "0"   "+"   "-"   "+"  
# [3,] "-"  "0"  "-"  "+"  "+"  "+"  "-"  "+"  "+"  "+"   "-"   "-"   "-"  

秘訣は、すべての値を加算してから、テーブルから1を減算することです

apply(m, 1, function(a) table(c('-','+','0',a))-1L)
#   [,1] [,2] [,3]
# -    5    6    6
# +    8    4    6
# 0    0    3    1

転置されているため、行ごとの関連性を維持することを好む人もいます。

t(apply(m, 1, function(a) table(c('-','+','0',a))-1))
#      - + 0
# [1,] 5 8 0
# [2,] 6 4 3
# [3,] 6 6 1

注意:apply返されmatrixた場合、すべての行が同じサイズのオブジェクトを返す場合にのみ。この場合、可能なすべての入力値がわかっているのでtableトリックを使用すると、常にinteger長さ3のベクトルが存在することが保証されます。他に何かがある場合は、不規則なとして返されlistます。

特別な場合、NAsの数も知りたい場合tableは、それらを合計に含めるように指示する必要もあります

t(apply(m, 1, function(a) table(c('-','+','0',a,NA),useNA='always')-1L))
#      - + 0 <NA>
# [1,] 5 8 0    0
# [2,] 6 4 3    0
# [3,] 6 6 1    0
m[1,2] <- NA
t(apply(m, 1, function(a) table(c('-','+','0',a,NA),useNA='always')-1L))
#      - + 0 <NA>
# [1,] 5 7 0    1
# [2,] 6 4 3    0
# [3,] 6 6 1    0

(ここに表示されているように、「既知の値」を追加する順序は重要ではありません。)

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

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

編集
0

コメントを追加

0

関連記事

分類Dev

データフレーム内のデータ型の数を数える方法

分類Dev

データフレーム内の要素列のレベルごとに文字列の要素数を数える

分類Dev

データフレーム内の因子変数の数を数える

分類Dev

R データ フレーム内の特定の文字列の数を数える

分類Dev

データフレーム内の特定のキーワードを数える

分類Dev

データフレーム内の(長い)週末の日数を数える

分類Dev

Pandasデータフレームの列にある一意の要素の数を数える方法

分類Dev

複数の変数のデータフレームの行を数える

分類Dev

データフレーム内の複数の特定の要素のレベルの名前を変更する

分類Dev

データフレームに複数の要素を追加する

分類Dev

R:関数の引数を使用してデータフレーム内の要素を更新する

分類Dev

パンダデータフレーム内の一意の組み合わせの数を数える

分類Dev

データフレーム内の連続するゼロの数を数える

分類Dev

変数内のコンマの数に基づいてデータフレームを並べ替える方法

分類Dev

データフレームの行の単語の総数を数える

分類Dev

他のデータフレームの重複の数を数える

分類Dev

Python:データフレーム内の複数の配列の要素ごとの標準偏差を取得する方法

分類Dev

パンダでデータフレームの各リストの要素を数える方法は?

分類Dev

パンダデータフレームのデータ型を数える

分類Dev

データフレーム内の複数の列から特定の文字列を置き換える

分類Dev

Pythonでデータフレームのグループ化された要素を数える

分類Dev

パンダデータフレーム内のリスト内の要素の数

分類Dev

データフレーム内の数値を置き換えます

分類Dev

パンダデータフレーム内の非NAN要素の総数を見つける

分類Dev

データフレームのリスト内の対応する要素に関数を適用します

分類Dev

Pandas データ フレームの出現回数を数える

分類Dev

Rのデータフレーム内の各行の一意の要素の数

分類Dev

データフレームの列の要素の数を見つける方法

分類Dev

R-(データフレーム内の)複数の一致から文字列を置き換える方法

Related 関連記事

  1. 1

    データフレーム内のデータ型の数を数える方法

  2. 2

    データフレーム内の要素列のレベルごとに文字列の要素数を数える

  3. 3

    データフレーム内の因子変数の数を数える

  4. 4

    R データ フレーム内の特定の文字列の数を数える

  5. 5

    データフレーム内の特定のキーワードを数える

  6. 6

    データフレーム内の(長い)週末の日数を数える

  7. 7

    Pandasデータフレームの列にある一意の要素の数を数える方法

  8. 8

    複数の変数のデータフレームの行を数える

  9. 9

    データフレーム内の複数の特定の要素のレベルの名前を変更する

  10. 10

    データフレームに複数の要素を追加する

  11. 11

    R:関数の引数を使用してデータフレーム内の要素を更新する

  12. 12

    パンダデータフレーム内の一意の組み合わせの数を数える

  13. 13

    データフレーム内の連続するゼロの数を数える

  14. 14

    変数内のコンマの数に基づいてデータフレームを並べ替える方法

  15. 15

    データフレームの行の単語の総数を数える

  16. 16

    他のデータフレームの重複の数を数える

  17. 17

    Python:データフレーム内の複数の配列の要素ごとの標準偏差を取得する方法

  18. 18

    パンダでデータフレームの各リストの要素を数える方法は?

  19. 19

    パンダデータフレームのデータ型を数える

  20. 20

    データフレーム内の複数の列から特定の文字列を置き換える

  21. 21

    Pythonでデータフレームのグループ化された要素を数える

  22. 22

    パンダデータフレーム内のリスト内の要素の数

  23. 23

    データフレーム内の数値を置き換えます

  24. 24

    パンダデータフレーム内の非NAN要素の総数を見つける

  25. 25

    データフレームのリスト内の対応する要素に関数を適用します

  26. 26

    Pandas データ フレームの出現回数を数える

  27. 27

    Rのデータフレーム内の各行の一意の要素の数

  28. 28

    データフレームの列の要素の数を見つける方法

  29. 29

    R-(データフレーム内の)複数の一致から文字列を置き換える方法

ホットタグ

アーカイブ