2

次のようなテーブル(t1)があります。

t1 <- array(1:20, dim=c(10,10))

      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
 [1,]    1   11    1   11    1   11    1   11    1    11
 [2,]    2   12    2   12    2   12    2   12    2    12
 [3,]    3   13    3   13    3   13    3   13    3    13
 [4,]    4   14    4   14    4   14    4   14    4    14
 [5,]    5   15    5   15    5   15    5   15    5    15
 [6,]    6   16    6   16    6   16    6   16    6    16
 [7,]    7   17    7   17    7   17    7   17    7    17
 [8,]    8   18    8   18    8   18    8   18    8    18
 [9,]    9   19    9   19    9   19    9   19    9    19
[10,]   10   20   10   20   10   20   10   20   10    20

このテーブルを 1 または 0 に変換します。セル数が 5 より大きい場合は 1 を、セル数が 5 未満または = 5 の場合は 0 を指定します。したがって、変換後、テーブル t1 は次のようになります。以下になります。

      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
 [1,]    0   1    0   1    0    1    0    1    0    1
 [2,]    0   1    0   1    0    1    0    1    0    1
 [3,]    0   1    0   1    0    1    0    1    0    1
 [4,]    0   1    0   1    0    1    0    1    0    1
 [5,]    0   1    0   1    0    1    0    1    0    1
 [6,]    1   1    1   1    1    1    1    1    1    1
 [7,]    1   1    1   1    1    1    1    1    1    1
 [8,]    1   1    1   1    1    1    1    1    1    1
 [9,]    1   1    1   1    1    1    1    1    1    1
[10,]    1   1    1   1    1    1    1    1    1    1

どのコマンドを使用すればよいですか?

4

2 に答える 2

5

ifelse()次のステートメントを使用できます。

ifelse(t1 > 5, 1, 0)

like のステートメントはandt1 > 5の行列になるため、R は" " および" " として扱うため、この特定の変換では、次のようにすることもできます。TRUEFALSETRUE1FALSE0

(t1 > 5)+0
      [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
 [1,]    0    1    0    1    0    1    0    1    0     1
 [2,]    0    1    0    1    0    1    0    1    0     1
 [3,]    0    1    0    1    0    1    0    1    0     1
 [4,]    0    1    0    1    0    1    0    1    0     1
 [5,]    0    1    0    1    0    1    0    1    0     1
 [6,]    1    1    1    1    1    1    1    1    1     1
 [7,]    1    1    1    1    1    1    1    1    1     1
 [8,]    1    1    1    1    1    1    1    1    1     1
 [9,]    1    1    1    1    1    1    1    1    1     1
[10,]    1    1    1    1    1    1    1    1    1     1
于 2012-10-17T10:36:06.697 に答える
0

私はそれを計っていませんが、代わりにifelse 条件文を使用するだけです。

foo <- bar < 5 ああ、ダン、ジュリアスが行って、10秒で私を打ち負かしました。

于 2012-10-17T11:50:14.483 に答える