我有以下两个数据框。
我的第一个DF是这样的,我是DDBB,在每个ISIN值中只有一个出现。
ISIN inst inst_type type
asd 1 2 ETF
asb 2 b Bond
bcd 3 c Bond
我的第二个DF是下一个,
ISIN inst inst_type type
asd 1 2 ""
asd 1 2 ""
bcd 3 c ""
bcd 3 c ""
bcd 3 c ""
asb 2 b ""
例如,我想在第一个DF的基础上填充第二个数据框“类型”列。 在我的ISIN的第一个DF中,“ asd”类型是“ ETF”,所以我的第二个ETF应该是这样。
ISIN inst inst_type type
asd 1 2 ETF
asd 1 2 ETF
bcd 3 c ""
bcd 3 c ""
bcd 3 c ""
asb 2 b ""
我可以使用for循环来做到这一点,但是我的问题是,如果我有一个具有40万行的Df,那不是一种有效的方法。
有什么想法如何更有效地解决它?
答案 0 :(得分:0)
您可以使用for循环,但是在不同的ISIN中而不是在行中循环,这样会更有效。像这样:
factors <- unique(df1$ISIN)
for(i in factors){
df2$type[df2$ISIN==i] <- df1$type[df1$ISIN==i][1]
}