0

2つの列を持つ行列があり、いくつかの数値は両方の列で同じですが、列2には列1にないいくつかの数値も含まれています。

column1にないcolumn2の値を選択し、column1に昇順で挿入したいと思います。

最初に、matrix [matrix [、1]%in%matrix [、2]のような行列演算を使用することを考えていました。

%in%の代わりに、「notin」に何かを使用します。

データファイルは次のとおりです。

https://dl.dropbox.com/u/22681355/example.csv

example<-read.csv("example.csv")

example [、2]には、example [、1]にはない数値が含まれています。

私はしたいと思います:

  1. %not in%に相当するものを使用してこれらの番号を検索します

以下の答えに従って、私は次のことができます:

values<-setdiff(example[,2],example[,1]

order<-sort(values)
4

1 に答える 1

2

このような?

Rgames> foo
     [,1] [,2] [,3] [,4] [,5]
[1,]    1    5    9   13   17
[2,]    2    6   10   14   18
[3,]    3    7    1   15   19
[4,]    4    8    3   16   20
Rgames> foo[,1]%in%foo[,3]
[1]  TRUE FALSE  TRUE FALSE
Rgames> foo[,1]*!foo[,1]%in%foo[,3]
[1] 0 2 0 4

もっときれいな方法があると確信しています。一体、これを行うだけです:

Rgames> setdiff(foo[,1],foo[,3])
[1] 2 4
于 2012-12-21T13:07:11.953 に答える