Skip to content

Commit 3ad4cb4

Browse files
authored
use trapezoid, update requirements (#678)
* use trapezoid, update versions * update bambi * use generator * fix test maxent
1 parent 228a322 commit 3ad4cb4

19 files changed

+49
-49
lines changed

environment-dev.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@ channels:
55
dependencies:
66
- python >= 3.11
77
- pip
8-
- matplotlib>=3.7
9-
- numba>=0.59
10-
- numpy>=1.24
11-
- scipy>=1.10, <1.15
8+
- matplotlib>=3.8
9+
- numba>=0.60
10+
- numpy>=2.0
11+
- scipy>=1.12
1212
- nbclient>=0.2
1313
- ipywidgets
1414
- ipympl
@@ -23,7 +23,7 @@ dependencies:
2323
- nbformat
2424
- ruff
2525
- ipykernel
26-
- pymc>=5.16.0
26+
- pymc>=5.24.0
2727
- bambi>=0.13.0
2828
- pip:
2929
- lxml

environment-docs.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@ channels:
44
- conda-forge
55
dependencies:
66
- python >= 3.11
7-
- matplotlib>=3.7
8-
- numba>=0.59
9-
- numpy>=1.24
10-
- scipy>=1.10, <1.15
7+
- matplotlib>=3.8
8+
- numba>=0.60
9+
- numpy>=2.0
10+
- scipy>=1.12
1111
- nbclient>=0.2
1212
- ipywidgets
1313
- ipympl
@@ -20,5 +20,5 @@ dependencies:
2020
- sphinx-tabs
2121
- sphinxcontrib-bibtex
2222
- jupyter-sphinx
23-
- pymc>=5.16.0
23+
- pymc>=5.24.0
2424
- bambi>=0.13.0

environment.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ channels:
44
- conda-forge
55
dependencies:
66
- python >= 3.11
7-
- matplotlib>=3.7
8-
- numba>=0.59
9-
- numpy>=1.24
10-
- scipy>=1.10, <1.15
7+
- matplotlib>=3.8
8+
- numba>=0.60
9+
- numpy>=2.0
10+
- scipy>=1.12

preliz/distributions/exgaussian.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ def _neg_logpdf(self, x):
9999
def entropy(self):
100100
x_values = self.xvals("restricted")
101101
logpdf = self.logpdf(x_values)
102-
return -np.trapz(np.exp(logpdf) * logpdf, x_values)
102+
return -np.trapezoid(np.exp(logpdf) * logpdf, x_values)
103103

104104
def mean(self):
105105
return self.mu + self.nu

preliz/distributions/hurdle.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ def mean(self):
8080
if self.kind == "discrete":
8181
return np.sum(x_values * pdf)
8282
else:
83-
return np.trapz(x_values * pdf, x_values)
83+
return np.trapezoid(x_values * pdf, x_values)
8484

8585
def mode(self):
8686
if self.kind == "discrete":
@@ -101,7 +101,7 @@ def var(self):
101101
if self.kind == "discrete":
102102
return np.sum((x_values - self.mean()) ** 2 * pdf)
103103
else:
104-
return np.trapz((x_values - self.mean()) ** 2 * pdf, x_values)
104+
return np.trapezoid((x_values - self.mean()) ** 2 * pdf, x_values)
105105

106106
def std(self):
107107
return self.var() ** 0.5
@@ -167,7 +167,7 @@ def entropy(self):
167167
if self.kind == "discrete":
168168
return -np.sum(np.exp(logpdf) * logpdf)
169169
else:
170-
return -np.trapz(np.exp(logpdf) * logpdf, x_values)
170+
return -np.trapezoid(np.exp(logpdf) * logpdf, x_values)
171171

172172
def _neg_logpdf(self, x):
173173
return -self.logpdf(x).sum()

preliz/distributions/logitnormal.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -118,20 +118,20 @@ def _neg_logpdf(self, x):
118118
def entropy(self):
119119
x_values = self.xvals("restricted")
120120
logpdf = self.logpdf(x_values)
121-
return -np.trapz(np.exp(logpdf) * logpdf, x_values)
121+
return -np.trapezoid(np.exp(logpdf) * logpdf, x_values)
122122

123123
def mean(self):
124124
x_values = self.xvals("full")
125125
pdf = self.pdf(x_values)
126-
return np.trapz(x_values * pdf, x_values)
126+
return np.trapezoid(x_values * pdf, x_values)
127127

128128
def median(self):
129129
return self.ppf(0.5)
130130

131131
def var(self):
132132
x_values = self.xvals("full")
133133
pdf = self.pdf(x_values)
134-
return np.trapz((x_values - self.mean()) ** 2 * pdf, x_values)
134+
return np.trapezoid((x_values - self.mean()) ** 2 * pdf, x_values)
135135

136136
def std(self):
137137
return self.var() ** 0.5
@@ -141,14 +141,14 @@ def skewness(self):
141141
std = self.std()
142142
x_values = self.xvals("full")
143143
pdf = self.pdf(x_values)
144-
return np.trapz(((x_values - mean) / std) ** 3 * pdf, x_values)
144+
return np.trapezoid(((x_values - mean) / std) ** 3 * pdf, x_values)
145145

146146
def kurtosis(self):
147147
mean = self.mean()
148148
std = self.std()
149149
x_values = self.xvals("full")
150150
pdf = self.pdf(x_values)
151-
return np.trapz(((x_values - mean) / std) ** 4 * pdf, x_values) - 3
151+
return np.trapezoid(((x_values - mean) / std) ** 4 * pdf, x_values) - 3
152152

153153
def mode(self):
154154
return find_mode_logitnormal(self)

preliz/distributions/loglogistic.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ def skewness(self):
118118
x_values = self.xvals("full")
119119
pdf = self.pdf(x_values)
120120
return np.where(
121-
self.beta > 3, np.trapz(((x_values - mean) / std) ** 3 * pdf, x_values), np.nan
121+
self.beta > 3, np.trapezoid(((x_values - mean) / std) ** 3 * pdf, x_values), np.nan
122122
)
123123

124124
def kurtosis(self):
@@ -127,7 +127,7 @@ def kurtosis(self):
127127
x_values = self.xvals("full")
128128
pdf = self.pdf(x_values)
129129
return np.where(
130-
self.beta > 4, np.trapz(((x_values - mean) / std) ** 4 * pdf, x_values) - 3, np.nan
130+
self.beta > 4, np.trapezoid(((x_values - mean) / std) ** 4 * pdf, x_values) - 3, np.nan
131131
)
132132

133133
def rvs(self, size=None, random_state=None):

preliz/distributions/moyal.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ def _neg_logpdf(self, x):
9292
def entropy(self):
9393
x_values = self.xvals("restricted")
9494
logpdf = self.logpdf(x_values)
95-
return -np.trapz(np.exp(logpdf) * logpdf, x_values)
95+
return -np.trapezoid(np.exp(logpdf) * logpdf, x_values)
9696

9797
def mean(self):
9898
return self.mu + self.sigma * (np.euler_gamma + np.log(2))

preliz/distributions/rice.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ def _neg_logpdf(self, x):
124124
def entropy(self):
125125
x_values = self.xvals("restricted")
126126
logpdf = self.logpdf(x_values)
127-
return -np.trapz(np.exp(logpdf) * logpdf, x_values)
127+
return -np.trapezoid(np.exp(logpdf) * logpdf, x_values)
128128

129129
def mean(self):
130130
return self.sigma * np.sqrt(np.pi / 2) * _l_half(-(self.nu**2) / (2 * self.sigma**2))

preliz/distributions/skew_studentt.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ def _neg_logpdf(self, x):
120120
def entropy(self):
121121
x_values = self.xvals("restricted")
122122
logpdf = self.logpdf(x_values)
123-
return -np.trapz(np.exp(logpdf) * logpdf, x_values)
123+
return -np.trapezoid(np.exp(logpdf) * logpdf, x_values)
124124

125125
def mean(self):
126126
return (

0 commit comments

Comments
 (0)