import pandas as pd
import re

data = pd.read_csv('df_vessels.csv')

with open('Parameters218.cellml', 'r') as r:
    with open('Parameters218_new.cellml', 'w') as w:
        for line in r:
            for rowNum in range(data.shape[0]):
                flow_name = 'v_nom_' + data.iloc[rowNum, 0]
                flow_val = data.iloc[rowNum,3]
                flow_val_string = 'initial_value=\"{:.8f}e-6\"'.format(flow_val)
                if flow_name in line:
                    line = re.sub('initial_value=\"\d*\.?\d*e?-?\d*\"', flow_val_string, line)
                    break
            w.write(line)

