如何消除另一个数据框中基于数据框的列名中的行

时间:2020-10-06 10:26:32

标签: r dataframe

我有两个数据框。 DF1在行中记录了所有物种名称,DF2在列中包含了这些物种的子集。我需要两个数据帧都匹配,所以我需要消除DF1中与DF2中的列不对应的行。

我尝试使用%in%,但是我不知道如何在同一公式中使用两个daatframe。

我希望我的问题很清楚!

任何帮助将不胜感激!

StatelessKieSession kieSession;

private void initKieSession(String filePath) {
        KieServices kieServices = KieServices.Factory.get();
        Resource dt
                = ResourceFactory
                .newClassPathResource(filePath,
                        getClass());
        KieFileSystem kieFileSystem = kieServices.newKieFileSystem().write(dt);
        KieBuilder kieBuilder = kieServices.newKieBuilder(kieFileSystem);
        kieBuilder.buildAll();
        if(kieBuilder.getResults().hasMessages(Message.Level.ERROR) || kieBuilder.getResults().hasMessages(Message.Level.WARNING)) {
            log.debug("[initKieSession] Issue while loading rules.");
            return;
        }


        KieRepository kieRepository = kieServices.getRepository();
        ReleaseId krDefaultReleaseId = kieRepository.getDefaultReleaseId();
        KieContainer kieContainer
                = kieServices.newKieContainer(krDefaultReleaseId);
        kieSession = kieContainer.newStatelessKieSession();
    }

public RulesDto executeRules(RulesDto rulesInput) {
        kieSession.execute(rulesInput);
        return rulesInput;
}

1 个答案:

答案 0 :(得分:1)

也许可以帮助您这段R base代码:

DF1_new <- DF1[DF1$species %in% colnames(DF2), ]