Wykonaj semi-join z data.table

Jak wykonać asemi-join z data.table? Pół-sprzężenie jest jak sprzężenie wewnętrzne, z tą różnicą, że zwraca tylko kolumny X (nie dotyczy również kolumn Y) i nie powtarza wierszy X, aby pasowały do ​​wierszy Y. Na przykład poniższy kod wykonuje wewnętrzny Przystąpić:

x <- data.table(x = 1:2, y = c("a", "b"))
setkey(x, x)
y <- data.table(x = c(1, 1), z = 10:11)

x[y]
#   x y  z
# 1: 1 a 10
# 2: 1 a 11

Pół-dołączenie powróci tylkox[1]

questionAnswers(8)

yourAnswerToTheQuestion