Мне нужно предотвратить объединение переменных, которые неявно хранятся и обновляются в цикле.Вот код:
#initialize vectors
SourceColumn = NULL
TargetColumn = NULL
InSource_NotInTarget = NULL
InTarget_NotInSource = NULL
CountNASource = NULL
CountNATarget = NULL
Count_Source_Total_Rows = NULL
Count_Target_Total_Rows = NULL
Count_Source_Unique_Rows = NULL
Count_Target_Unique_Rows = NULL
SourceRowType = NULL
TargetRowType = NULL
for (i in names(nmMappingLOAD_CC_C_PROJECT_CONFIG)){
a1Ind = paste(i)
a2Ind = paste(nmMappingLOAD_CC_C_PROJECT_CONFIG[i])
#DB data(Target)
a1 = adhocTibl[a1Ind]
#Excel data(Source)
a2 = excelData[a2Ind]
#Build col vectors
#fails here
Count_InTarget_NotInSource = append(InTarget_NotInSource, nrow(anti_join(a1, a2, by = c(names(a1) = names(a2)))))
Count_InSource_NotInTarget = append(InSource_NotInTarget, nrow(anti_join(a2, a1, by = c("PROJECT_ID"="PROJECT_CONFIG_ID"))))
}
Здесь происходит сбой Count_InTarget_NotInSource = append(InTarget_NotInSource, nrow(anti_join(a1, a2, by = c(names(a1) = names(a2)))))
С ошибкой Error: Error: unexpected '}' in "}"
Я могу явно указать столбцы соединения, такие как by = c("PROJECT_CONFIG_ID"="PROJECT_ID"))))
иэто будет работать, но для этого случая я перебираю несколько столбцов в обеих таблицах, а имена столбцов обновляются в цикле.