2 つのデータ フレームがあります。DF1 には 3 つの列があり、DF2 には 1 つの列があります。DF1 には DF2 に含まれるすべての要素がありますが、以下に示すようにそれらのほとんどが複製されます。
DF1=
***freetext***, ***specific***, ***ICDcode***
Jaundice,hepatitisA,B,C Hepatitis A B15
Jaundice,hepatitisA,B,C Hepatitis B B16
Jaundice,hepatitisA,B,C Hepatitis C B17.1
Jaundice,hepatitisA,B,C Jaundice R17
lobar Pneumonia Lobar pneumonia J18.1
Lobar Pneumonia ,scabies Lobar pneumonia J18.1
scabiess scabies G10
DF2=
Jaundice,hepatitisA,B,C
scabiess
Lobar Pneumonia ,scabies
lobar Pneumonia
一致が発生するたびにDF1の形式をとる結果のデータ フレームが存在するように、2 つのデータ フレームを一致させたいと考えています。桁。つまり、重複は以下に示すように維持する必要があります。
Resultant data frame should appear like this.
column1 column2 column3
Jaundice,hepatitisA,B,C Hepatitis A B15
Jaundice,hepatitisA,B,C Hepatitis B B16
Jaundice,hepatitisA,B,C Hepatitis C B17.1
Jaundice,hepatitisA,B,C Jaundice R17
では、DF2 をループして DF1 (最初の列) で一致を見つけ、上記のように他のすべての対応する行と一致するデータ フレームを生成するにはどうすればよいですか?
これが私のスクリプトですが、望ましい結果が得られないようです
newMatches<- data.frame()
for(i 1:nrow(DF1){ for(j in 1:nrow(DF2[,1]{grep(j, i, ignore.case=F, value=T)->newMatches}}
#it doesn't produce other columns of DF1
どんな助けや提案も大歓迎です.Rの初心者です.