def assay_transpose(assay_df):
    """
    assay_t_df = assay_transpose(assay_df)

    Parameters
    ----------------
    assay_df: dataframe of assay data with genes as rows and patients as columns

    Returns
    ----------------
    dataframe transposed with patients as rows and genes as columns 
    """
    assay_pt_df = assay_df.T
    assay_pt_df.columns = assay_pt_df.iloc[0]
    assay_pt_df = assay_pt_df.iloc[1:]
    assay_pt_df['entity_submitter_id'] = list(assay_pt_df.index)
    # assay_pt_df['TARGET USI'] = list(assay_pt_df.index)
    # assay_pt_df['TARGET USI'] = assay_pt_df['TARGET USI'].apply(lambda x: x[0:16])
    # assay_pt_df['2nd ID'] = list(assay_pt_df.index)
    # assay_pt_df['2nd ID'] = assay_pt_df['2nd ID'].apply(lambda x: x[16:])
    return assay_pt_df