This is the code i present you where the problem is
def prepare_endmember_df(endmembers_arr):
… df = pd.DataFrame(data=endmembers_arr,
… columns=[“endmember_name”, “CT”, “SA”,
… “Oxygen”,“AOU”])
… df[“mass”] = 1
… return df
…
intermediatewaters__Med_2017_df = prepare_endmember_df([WIW, LIW])
print(intermediatewaters__Med_2017_df)
endmember_name CT SA Oxygen AOU mass
0 WIW 13.3 37.50 165 80 1
1 LIW 13.2 38.51 165 80 1convertedparamgroups = [
… pyompa.ConvertedParamGroup(
… groupname=“AOU_remin”,
… conversion_ratios=[{“oxygen”: -1.0, “aou”: 1.0}],
… always_positive= True)
… ]evansorig_paramweightings = {
… “CT”: 24.0,
… “SA”: 24.0,
… “mass”: 24.0,
… “Oxygen”: 7.0,
… “AOU”: 7.0
…
… }evansorig_settings = {
… “param_names”: [“CT”, “SA”, “Oxygen”, “AOU”,“mass”],
… “param_weightings”: evansorig_paramweightings,
… “convertedparam_groups”: convertedparamgroups,
… “sumtooneconstraint”: False,
… “standardize_by_watertypes”: True,
… }orig_intermediate_Med_2017 = pyompa.OMPAProblem(
… obs_df = intermediatewaters_Med_2017_df,
… **evansorig_settings).solve(
… intermediatewaters__Med_2017_df,
… endmember_name_column=“endmember_name”)
Dropping 2089 rows that have NA values in the observations
Endmember-idx mapping is
OrderedDict([(‘WIW’, [0]), (‘LIW’, [1])])
I’m assuming that the index encoding mass is: [2 3 4]
Traceback (most recent call last):
File “”, line 3, in
File “C:\Users\alegi\miniconda3\envs\OMP\Lib\site-packages\pyompa\ompacore.py”, line 886, in solve
raise RuntimeError(“Multiple indices in source water type”
RuntimeError: Multiple indices in source water type matrix have 0 std…I need to be told which one is ‘mass’ [[ 13.3 37.5 165. 80. 1. ]
[ 13.2 38.51 165. 80. 1. ]]
In the first part of the code you can see the Dataframe created in order to run the analysis for the PYOMPA package. The dataframe is called intermediatewaters__Med_2017_df.
I’d like to know how I can be able to select the index mass knowing that there’s a problem in the dataframe intermediatewaters__Med_2017_df
Thank you !