Evitar que dplyr se una a NA

Me gustaría hacer una combinación completa de 2 df's. Para mi sorpresa, el comportamiento predeterminado de dplyr es unirse a NA si existen en ambos df. ¿Existe una funcionalidad para evitar que dplyr haga esto?

Aquí hay un ejemplo con unión interna:

x <- data.frame(a = c(5, NA, 9), b = 1:3)
y <- data.frame(a = c(5, NA, 9), c = 4:6)
z <- dplyr::inner_join(x, y, by = 'a')

Me gustaría que z contenga solo 2 registros, no 3. Idealmente, quiero hacer esto sin tener que filtrar manualmente los registros con NA de antemano y luego agregarlos al resultado (ya que parece torpe).

Respuestas a la pregunta(1)

Su respuesta a la pregunta