Hi,
I tried to run :
h = HolteAndTalley(df['PRES'],df['TE90'])
It failed. Here is the output:
{
"name": "KeyError",
"message": "0",
"stack": "---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/pandas/core/indexes/range.py:391, in RangeIndex.get_loc(self, key, method, tolerance)
390 try:
--> 391 return self._range.index(new_key)
392 except ValueError as err:
ValueError: 0 is not in range
The above exception was the direct cause of the following exception:
KeyError Traceback (most recent call last)
Cell In[15], line 1
----> 1 h = HolteAndTalley(df['PRES'],df['TE90'])
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/holteandtalley/handt.py:7, in HolteAndTalley.init(self, pressures, temperatures, salinities, densities)
6 def init(self,pressures,temperatures,salinities=[],densities=[]):
----> 7 self.temp = tempProfile(pressures,temperatures)
8 self.tempMLD = self.temp.findMLD()
9 if salinities != [] and densities !=[]:
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/holteandtalley/tempProfile.py:13, in tempProfile.init(self, pressures, temperatures)
11 self.temperatures = temperatures[startindex:]
12 self.pressures = pressures[startindex:]
---> 13 self.temperatureGradients= self.generateGradientListNoSmooth(self.temperatures)
14 self.TMax = int(self.calculateTMax())
15 self.TMaxPressure = self.pressures[self.TMax]
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/holteandtalley/profile.py:21, in Profile.generateGradientListNoSmooth(self, values)
19 tGS=[]
20 for index in range(len(values)-1):
---> 21 dt = float(values[index] - values[index+1])
22 dp = float(self.pressures[index] - self.pressures[index+1])
23 tGS.append(dt/dp)
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/pandas/core/series.py:981, in Series.getitem(self, key)
978 return self._values[key]
980 elif key_is_scalar:
--> 981 return self._get_value(key)
983 if is_hashable(key):
984 # Otherwise index.get_value will raise InvalidIndexError
985 try:
986 # For labels that don't resolve as scalars like tuples and frozensets
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/pandas/core/series.py:1089, in Series._get_value(self, label, takeable)
1086 return self._values[label]
1088 # Similar to Index.get_value, but we do not fall back to positional
-> 1089 loc = self.index.get_loc(label)
1090 return self.index._get_values_for_loc(self, loc, label)
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/pandas/core/indexes/range.py:393, in RangeIndex.get_loc(self, key, method, tolerance)
391 return self._range.index(new_key)
392 except ValueError as err:
--> 393 raise KeyError(key) from err
394 self._check_indexing_error(key)
395 raise KeyError(key)
KeyError: 0"
}
Hi,
I tried to run :
h = HolteAndTalley(df['PRES'],df['TE90'])
It failed. Here is the output:
{
"name": "KeyError",
"message": "0",
"stack": "---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/pandas/core/indexes/range.py:391, in RangeIndex.get_loc(self, key, method, tolerance)
390 try:
--> 391 return self._range.index(new_key)
392 except ValueError as err:
ValueError: 0 is not in range
The above exception was the direct cause of the following exception:
KeyError Traceback (most recent call last)
Cell In[15], line 1
----> 1 h = HolteAndTalley(df['PRES'],df['TE90'])
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/holteandtalley/handt.py:7, in HolteAndTalley.init(self, pressures, temperatures, salinities, densities)
6 def init(self,pressures,temperatures,salinities=[],densities=[]):
----> 7 self.temp = tempProfile(pressures,temperatures)
8 self.tempMLD = self.temp.findMLD()
9 if salinities != [] and densities !=[]:
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/holteandtalley/tempProfile.py:13, in tempProfile.init(self, pressures, temperatures)
11 self.temperatures = temperatures[startindex:]
12 self.pressures = pressures[startindex:]
---> 13 self.temperatureGradients= self.generateGradientListNoSmooth(self.temperatures)
14 self.TMax = int(self.calculateTMax())
15 self.TMaxPressure = self.pressures[self.TMax]
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/holteandtalley/profile.py:21, in Profile.generateGradientListNoSmooth(self, values)
19 tGS=[]
20 for index in range(len(values)-1):
---> 21 dt = float(values[index] - values[index+1])
22 dp = float(self.pressures[index] - self.pressures[index+1])
23 tGS.append(dt/dp)
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/pandas/core/series.py:981, in Series.getitem(self, key)
978 return self._values[key]
980 elif key_is_scalar:
--> 981 return self._get_value(key)
983 if is_hashable(key):
984 # Otherwise index.get_value will raise InvalidIndexError
985 try:
986 # For labels that don't resolve as scalars like tuples and frozensets
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/pandas/core/series.py:1089, in Series._get_value(self, label, takeable)
1086 return self._values[label]
1088 # Similar to Index.get_value, but we do not fall back to positional
-> 1089 loc = self.index.get_loc(label)
1090 return self.index._get_values_for_loc(self, loc, label)
File ~/miniconda3/envs/ctds/lib/python3.10/site-packages/pandas/core/indexes/range.py:393, in RangeIndex.get_loc(self, key, method, tolerance)
391 return self._range.index(new_key)
392 except ValueError as err:
--> 393 raise KeyError(key) from err
394 self._check_indexing_error(key)
395 raise KeyError(key)
KeyError: 0"
}