0


0

MYSQLテーブルおよび/またはRオブジェクトの両方に存在するデータを表示する

私はそれが定期的な問題だと思い、数回答えましたが、質問をする方法がわからないだけです=(

MySQLの場合:何らかの種類の文字列を含む2つのテーブルがあります。 両方のテーブルで発生するデータ 2。 テーブルbにないaからのデータ

Rでも同じ:+ iに2つのR data.frameがあり、欲しい:+ 1。 aおよびb + 2で発生するデータ。 aでは発生するがbでは発生しないデータ

2 Answer


3


mysqlでは、両方のテーブルのデータを取得するためにこれを行うことができます

SELECT * FROM table1 t1 INNER JOIN table2 t2 ON t1.id = t2.id

これを実行して、テーブルbにないaからタダを取得します

SELECT * FROM table1 t1 LEFT JOIN table2 t2 ON t1.id = t2.id
WHERE t2.id IS NULL


3


`R`の場合:

a <- data.frame(V1=sample(letters[1:3],20,TRUE),V2=rnorm(20))
b <- data.frame(V1=sample(letters[2:4],20,TRUE),V2=rnorm(20))

# the data that occur in a and b
(ab <- merge(a,b,by="V1"))

# the data that occur in a but not in b
aNOTb <- merge(a,b,by="V1",all=TRUE)
(aNOTb <- aNOTb[is.na(aNOTb$V2.y),])