def readDivPressure(fileName):
try:<EOL><INDENT>df = pandas.read_csv(fileName, sep=None, engine='<STR_LIT>')<EOL>pandasformat = True<EOL><DEDENT>except ValueError:<EOL><INDENT>pandasformat = False<EOL><DEDENT>df.columns = ['<STR_LIT>', '<STR_LIT>']<EOL>scaleFactor = max(df["<STR_LIT>"].abs())<EOL>if scaleFactor > <NUM_LIT:0>:<EOL><INDENT>df["<STR_LIT>"] = [x / scaleFactor for x in df["<STR_LIT>"]]<EOL><DEDENT>assert len(df['<STR_LIT>'].tolist()) == len(set(df['<STR_LIT>'].tolist())),"<STR_LIT>".format(fileName)<EOL>assert max(df["<STR_LIT>"].abs()) <= <NUM_LIT:1>, "<STR_LIT>"<EOL>sites = df['<STR_LIT>'].tolist()<EOL>divPressure = {}<EOL>for r in sites:<EOL><INDENT>divPressure[r] = df[df['<STR_LIT>'] == r]["<STR_LIT>"].tolist()[<NUM_LIT:0>]<EOL><DEDENT>return divPressure<EOL>
Reads in diversifying pressures from some file.

    Scale diversifying pressure values so absolute value of the max value is 1,
    unless all values are zero.

    Args:
        `fileName` (string or readable file-like object)
            File holding diversifying pressure values. Can be
            comma-, space-, or tab-separated file. The first column
            is the site (consecutively numbered, sites starting
            with one) and the second column is the diversifying pressure values.

    Returns:
        `divPressure` (dict keyed by ints)
            `divPressure[r][v]` is the diversifying pressure value of site `r`.