[R-br] Cruzamento para alinhar duas matrizes com colunas iguais, mas dimensões diferentes

Adriele Giaretta Biase adrielegbiase em gmail.com
Sexta Fevereiro 10 18:08:24 BRST 2017


Pessoal, boa tarde!

eu preciso comparar duas matrizes de dados (A e B) , que possuem três
colunas (x, y, z).

O número de linhas matriz A é superior que o número de linhas da  matriz B.

As duas matrizes A e B possuem as colunas x e y com valores iguais,
ressalvo que na matriz A, existe um número de linhas maior que na matriz B.

Nunca existirá linhas com valores exatamente iguais, considerando a
combinação entre x e y, respectivamente.

Eu gostaria de saber como obter uma nova matriz C, que remova da matriz A,
as linhas que não estão na matriz B, obtendo as mesmas colunas x, y e z,
 respectivamente.

Didaticamente, eu queria obter a seguinte matriz C,  com as linhas com os
valores comuns  entre A e B (das colunas x e y), ressalvando
respectivamente os valores de z da planilha original A.

A=

x

y

z

1

1

2.3

2

1

1.4

3

1

2.5

1

2

7.8

2

2

9.1

3

2

0

1

3

2

2

3

4.5

3

3

8

B=

x

y

z

2

1

7

3

1

6.3

1

2

9

2

2

7.4

3

2

13.5

2

3

12

3

3

11

C=

x

y

z

2

1

1.4

3

1

2.5

1

2

7.8

2

2

9.1

3

2

0

2

3

4.5

3

3

8



Agradeço de alguém puder me ajudar, caso já tenha alguma função no R, que
faça isso.


A função *match(x,y) *funciona se for apenas com vetor (uma coluna apenas).


*match(x,y):* ele cruza o vetor x com o vetor y. Ele retorna um vetor do
tamanho de x, informando o índice em y no qual se encontram os elementos de
x. Caso contrário, ele informa NA.

-- 
Adriele Giaretta Biase.
Mestre em  Estatística e Experimentação Agropecuária - UFLA.
Doutora em Estatística e Experimentação Agronômica - ESALQ/ USP
Contato: (19) 98861-0619.
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20170210/bfec2bb3/attachment.html>


Mais detalhes sobre a lista de discussão R-br