def test_graph_refutation(self, num_variables,num_samples): data = dowhy.datasets.dataset_from_random_graph(num_vars = num_variables, num_samples= num_samples) df = data["df"] model = CausalModel( data=df, treatment=data["treatment_name"], outcome=data["outcome_name"], graph=data["gml_graph"], ) graph_refutation_object = model.refute_graph(k = 1, independence_test = {'test_for_continuous': 'partial_correlation', 'test_for_discrete' : 'conditional_mutual_information'}) assert graph_refutation_object.refutation_result == True
def test_graph_refutation2(self, num_variables,num_samples): data = dowhy.datasets.dataset_from_random_graph(num_vars = num_variables, num_samples= num_samples) df = data["df"] gml_str = """ graph [ directed 1 node [ id 0 label "a" ] node [ id 1 label "b" ] node [ id 2 label "c" ] node [ id 3 label "d" ] node [ id 4 label "e" ] node [ id 5 label "f" ] node [ id 6 label "g" ] node [ id 7 label "h" ] node [ id 8 label "i" ] node [ id 9 label "j" ] edge [ source 0 target 1 ] edge [ source 0 target 3 ] edge [ source 3 target 2 ] edge [ source 7 target 4 ] edge [ source 6 target 5 ] edge [ source 7 target 8 ] edge [ source 9 target 2 ] edge [ source 9 target 8 ] ] """ model = CausalModel( data=df, treatment=data["treatment_name"], outcome=data["outcome_name"], graph=gml_str, ) graph_refutation_object = model.refute_graph(k = 2, independence_test = {'test_for_continuous': 'partial_correlation', 'test_for_discrete' : 'conditional_mutual_information'}) assert graph_refutation_object.refutation_result == False