def f(): s = SNPs("tests/input/generic.csv") s.sort_snps()
def test_merging_files_discrepant_snps(self): df = pd.read_csv( "tests/input/discrepant_snps.csv", skiprows=1, na_values="--", names=[ "rsid", "chrom", "pos_file1", "pos_file2", "genotype_file1", "genotype_file2", "discrepant_position", "discrepant_genotype", "expected_position", "expected_genotype", ], index_col=0, dtype={ "chrom": object, "pos_file1": np.int64, "pos_file2": np.int64, "discrepant_position": bool, "discrepant_genotype": bool, }, ) df1 = df[["chrom", "pos_file1", "genotype_file1"]] df2 = df[["chrom", "pos_file2", "genotype_file2"]] df1.to_csv( "tests/input/discrepant_snps1.csv", na_rep="--", header=["chromosome", "position", "genotype"], ) df2.to_csv( "tests/input/discrepant_snps2.csv", na_rep="--", header=["chromosome", "position", "genotype"], ) sc = SNPsCollection([ "tests/input/discrepant_snps1.csv", "tests/input/discrepant_snps2.csv" ]) expected = df[[ "chrom", "discrepant_position", "discrepant_genotype", "expected_position", "expected_genotype", ]] expected = expected.rename(columns={ "expected_position": "pos", "expected_genotype": "genotype" }) expected_snps = SNPs() expected_snps._snps = expected expected_snps.sort_snps() expected = expected_snps.snps pd.testing.assert_index_equal( sc.discrepant_positions.index, expected.loc[expected["discrepant_position"] == True].index, ) pd.testing.assert_index_equal( sc.discrepant_genotypes.index, expected.loc[expected["discrepant_genotype"] == True].index, ) pd.testing.assert_series_equal(sc.snps["pos"], expected["pos"]) pd.testing.assert_series_equal(sc.snps["genotype"], expected["genotype"])