我想从一个数据帧添加到另一个数据帧,从
dfadd
到
dfmaster
,同时保持行的顺序
数据主机
.
我试图使用merge()但它改变了
数据主机
. 顺序是关键。有没有data.table()或tidyverse()方法来处理这个问题?
谢谢!
# Data
dfmaster <- data.frame(variable_name=c("Blood_sugar","","","Blood_pressure","","Pulse",""),variable_level=c("high","medium","low","high","low","high","low"),variable_defin=c("baseline, lab","","","baseline, measured","","baseline, measured",""))
dfadd <- data.frame(variable_name=c("Blood_sugar","Blood_pressure","Pulse","Breakfast","Rest"),centre_names1=c("ST","FD","","QW",""),centre_names2=c("","HF","","",""),centre_names3=c("","LD","","",""),one_or_more=c("one","more","","one",""))
# Goal
dfgoal <- data.frame(variable_name=c("Blood_sugar","","","Blood_pressure","","Pulse",""),variable_level=c("high","medium","low","high","low","high","low"),variable_defin=c("baseline, lab","","","baseline, measured","","baseline, measured",""),centre_names1=c("ST","","","FD","","",""),centre_names2=c("","","","FD","","",""),centre_names3=c("","","","LD","","",""),one_or_more=c("more","","","more","","",""))
# Attempt
dfmaster <- merge(dfmaster,dfadd,by="variable_name", all.x=T)