Exemplo n.º 1
0
Fpath = filedialog.askdirectory()

# 读取panel表信息
panel_file = Fpath + "/panel.xlsx"
panel_tuple = Fcs.export_panel_tuple(panel_file)
print(panel_tuple)

for filename in [
        filename for filename in os.listdir(Fpath)
        if os.path.splitext(filename)[1] == ".fcs"
]:
    file = Fpath + '/' + filename
    fcs = Fcs(file)

    pars = fcs.delete_channel(fcs.pars, 89, 115, 140, 115)
    # pars = fcs.marker_rename(fcs.pars, *panel_tuple)
    # stain_channel_index = fcs.get_stain_channels(pars)
    #
    # # 添加event_length, 191, 193, 194, 140
    # add_channel = ["Event_length", "Ir191Di", "Ir193Di", "Pt194Di", "Ce140Di"]
    # add_index = [i + 1 for i in range(0, len(pars)) if pars[i].par_short_name in add_channel]
    # stain_channel_index.extend(add_index)
    # pars = [pars[i] for i in range(0, len(pars)) if i + 1 in stain_channel_index]

    # 根据当前的filename去查找新的name
    new_filename = re.sub("-", "", filename)
    # new_filename = re.sub("^.+?_", "gsH_", new_filename)
    new_file = Fpath + "/WriteFcs/" + new_filename

    fcs.write_to(new_file, pars)
Exemplo n.º 2
0
if __name__ == '__main__':
    ###################################################
    ####    1.Read FCS file and convert to CSV     ####
    ###################################################
    # Choose File Path
    Fpath = filedialog.askdirectory()
    os.makedirs(Fpath + "/WriteFcs/")
    csv_path = Fpath + '/WriteFcs/'

    for filename in [
            filename for filename in os.listdir(Fpath)
            if os.path.splitext(filename)[1] == ".fcs"
    ]:
        file = Fpath + '/' + filename
        fcs = Fcs(file)
        pars = fcs.pars
        new_filename = re.sub("-", "", filename)
        new_filename = re.sub("^.+?_", "", new_filename)
        # new_filename = re.sub("^.+?_", "", new_filename)
        new_file = Fpath + "/WriteFcs/" + new_filename + '.csv'
        fcs.write_to(new_file, pars, to='csv')

    path = Fpath + "/WriteFcs"
    all_df = pd.DataFrame()
    for file in os.listdir(path):
        df = pd.read_csv(path + '/' + file)
        all_df = all_df.append(df)
        print("File %s has finished." % file)
    all_df.iloc[:, :-1].to_csv(path + '/' + path.split('/')[-2] + '.csv',
                               index=False)
Exemplo n.º 3
0
        file = Fpath + '/' + filename
        fcs = Fcs(file)
        pars = fcs.marker_rename(fcs.pars, *panel_tuple)
        stain_channel_index = fcs.get_stain_channels(pars)

        # Add event_length, 191, 193, 194, 140
        add_channel = ["Event_length", "Ir191Di", "Ir193Di", "Pt194Di", "Ce140Di"]
        add_index = [i + 1 for i in range(0, len(pars)) if pars[i].par_short_name in add_channel]
        stain_channel_index.extend(add_index)
        pars = [pars[i] for i in range(0, len(pars)) if i + 1 in stain_channel_index]
        # Rename new file
        new_filename = re.sub("-", "", filename)
        new_filename = re.sub("^.+?_", "", new_filename)
        # new_filename = re.sub("^.+?_", "", new_filename)
        new_file = Fpath + "/WriteFcs/" + new_filename
        fcs.write_to(new_file, pars, to="csv")
    print('All FCS files have been converted to CSV files.', '\n', '-'*100, '\n')


    ###################################################
    ####           2. Calculation                  ####
    ###################################################
    file_list = os.listdir(csv_path)
    label_frequency_all = pd.DataFrame()
    ratio_all = pd.DataFrame()
    real_all = pd.DataFrame()
    real_adjust_all = pd.DataFrame()
    confidence_all = pd.DataFrame()
    immune_age_all = pd.DataFrame()
    ratio34_all = pd.DataFrame()
    impair_all = pd.DataFrame()