From 54824a5276ba85253975951b32fb6a59a271966b Mon Sep 17 00:00:00 2001 From: Matthew Silverman Date: Mon, 21 Jul 2025 10:12:25 -0400 Subject: [PATCH 1/2] replace pkg_resources file ref with pathlib --- strawberryfields/apps/data/feature.py | 8 +++--- strawberryfields/apps/data/sample.py | 40 +++++++++++++-------------- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/strawberryfields/apps/data/feature.py b/strawberryfields/apps/data/feature.py index 054f3650f..af6a2c75d 100644 --- a/strawberryfields/apps/data/feature.py +++ b/strawberryfields/apps/data/feature.py @@ -16,10 +16,10 @@ """ # pylint: disable=unnecessary-pass from abc import ABC, abstractmethod -import pkg_resources import numpy as np +from pathlib import Path -DATA_PATH = pkg_resources.resource_filename("strawberryfields", "apps/data/feature_data") + "/" +DATA_PATH = Path(__file__).parent / "feature_data" class FeatureDataset(ABC): @@ -87,9 +87,9 @@ def method(self) -> str: def __init__(self): self.vectors = np.load( - f"{DATA_PATH}{self._data_filename}_{self.method}_fv.npy", allow_pickle=True + DATA_PATH / f"{self._data_filename}_{self.method}_fv.npy", allow_pickle=True ) - self.adjs = np.load(DATA_PATH + self._data_filename + "_mat.npy", allow_pickle=True) + self.adjs = np.load(DATA_PATH / f"{self._data_filename}_mat.npy", allow_pickle=True) self.n_vectors, self.n_features = self.vectors.shape def __iter__(self): diff --git a/strawberryfields/apps/data/sample.py b/strawberryfields/apps/data/sample.py index 19e5cde5e..bf7d581e2 100644 --- a/strawberryfields/apps/data/sample.py +++ b/strawberryfields/apps/data/sample.py @@ -16,12 +16,12 @@ """ # pylint: disable=unnecessary-pass from abc import ABC, abstractmethod +from pathlib import Path -import pkg_resources import numpy as np import scipy -DATA_PATH = pkg_resources.resource_filename("strawberryfields", "apps/data/sample_data") + "/" +DATA_PATH = Path(__file__).parent / "sample_data" class SampleDataset(ABC): @@ -53,7 +53,7 @@ def _data_filename(self) -> str: pass def __init__(self): - self.data = scipy.sparse.load_npz(DATA_PATH + self._data_filename + ".npz") + self.data = scipy.sparse.load_npz(DATA_PATH / f"{self._data_filename}.npz") self.n_samples, self.modes = self.data.shape def __iter__(self): @@ -124,7 +124,7 @@ class GraphDataset(SampleDataset, ABC): def __init__(self): super().__init__() - self.adj = scipy.sparse.load_npz(DATA_PATH + self._data_filename + "_A.npz").toarray() + self.adj = scipy.sparse.load_npz(DATA_PATH / f"{self._data_filename}_A.npz").toarray() class Planted(GraphDataset): @@ -333,11 +333,11 @@ class MoleculeDataset(SampleDataset, ABC): def __init__(self): super().__init__() - self.w = scipy.sparse.load_npz(DATA_PATH + self._data_filename + "_w.npz").toarray()[0] - self.wp = scipy.sparse.load_npz(DATA_PATH + self._data_filename + "_wp.npz").toarray()[0] - self.Ud = scipy.sparse.load_npz(DATA_PATH + self._data_filename + "_Ud.npz").toarray() + self.w = scipy.sparse.load_npz(DATA_PATH / f"{self._data_filename}_w.npz").toarray()[0] + self.wp = scipy.sparse.load_npz(DATA_PATH / f"{self._data_filename}_wp.npz").toarray()[0] + self.Ud = scipy.sparse.load_npz(DATA_PATH / f"{self._data_filename}_Ud.npz").toarray() self.delta = scipy.sparse.load_npz( - DATA_PATH + self._data_filename + "_delta.npz" + DATA_PATH / f"{self._data_filename}_delta.npz" ).toarray()[0] # pylint: disable=missing-docstring @@ -409,14 +409,14 @@ def __init__(self, t): ) index = self._times_to_indices[t] - all_data = np.load(DATA_PATH + "water.npz")["arr_0"] + all_data = np.load(DATA_PATH / "water.npz")["arr_0"] self.data = all_data[index] self.data = scipy.sparse.csr_matrix(self.data) self.n_samples, self.modes = self.data.shape - self.w = scipy.sparse.load_npz(DATA_PATH + "water_w.npz").toarray()[0] - self.U = scipy.sparse.load_npz(DATA_PATH + "water_U.npz").toarray() + self.w = scipy.sparse.load_npz(DATA_PATH / "water_w.npz").toarray()[0] + self.U = scipy.sparse.load_npz(DATA_PATH / "water_U.npz").toarray() n_mean = 1 / 3 threshold = False @@ -461,20 +461,20 @@ def __init__(self, t): ) index = self._times_to_indices[t] - all_data = np.load(DATA_PATH + "pyrrole.npz")["arr_0"] + all_data = np.load(DATA_PATH / "pyrrole.npz")["arr_0"] self.data = all_data[index] self.data = scipy.sparse.csr_matrix(self.data) self.n_samples, self.modes = self.data.shape - self.ri = scipy.sparse.load_npz(DATA_PATH + "pyrrole_ri.npz").toarray()[0] - self.rf = scipy.sparse.load_npz(DATA_PATH + "pyrrole_rf.npz").toarray()[0] - self.wi = scipy.sparse.load_npz(DATA_PATH + "pyrrole_wi.npz").toarray()[0] - self.wf = scipy.sparse.load_npz(DATA_PATH + "pyrrole_wf.npz").toarray()[0] - self.Li = scipy.sparse.load_npz(DATA_PATH + "pyrrole_Li.npz").toarray() - self.Lf = scipy.sparse.load_npz(DATA_PATH + "pyrrole_Lf.npz").toarray() - self.m = scipy.sparse.load_npz(DATA_PATH + "pyrrole_m.npz").toarray()[0] - self.U = scipy.sparse.load_npz(DATA_PATH + "pyrrole_U.npz").toarray() + self.ri = scipy.sparse.load_npz(DATA_PATH / "pyrrole_ri.npz").toarray()[0] + self.rf = scipy.sparse.load_npz(DATA_PATH / "pyrrole_rf.npz").toarray()[0] + self.wi = scipy.sparse.load_npz(DATA_PATH / "pyrrole_wi.npz").toarray()[0] + self.wf = scipy.sparse.load_npz(DATA_PATH / "pyrrole_wf.npz").toarray()[0] + self.Li = scipy.sparse.load_npz(DATA_PATH / "pyrrole_Li.npz").toarray() + self.Lf = scipy.sparse.load_npz(DATA_PATH / "pyrrole_Lf.npz").toarray() + self.m = scipy.sparse.load_npz(DATA_PATH / "pyrrole_m.npz").toarray()[0] + self.U = scipy.sparse.load_npz(DATA_PATH / "pyrrole_U.npz").toarray() n_mean = 0.12599583 threshold = False From fd916d09c24617c9c8e5923abbca5e7c1a899f7e Mon Sep 17 00:00:00 2001 From: Matthew Silverman Date: Mon, 21 Jul 2025 10:30:08 -0400 Subject: [PATCH 2/2] Update strawberryfields/apps/data/feature.py --- strawberryfields/apps/data/feature.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/strawberryfields/apps/data/feature.py b/strawberryfields/apps/data/feature.py index af6a2c75d..66e0db35d 100644 --- a/strawberryfields/apps/data/feature.py +++ b/strawberryfields/apps/data/feature.py @@ -16,9 +16,10 @@ """ # pylint: disable=unnecessary-pass from abc import ABC, abstractmethod -import numpy as np from pathlib import Path +import numpy as np + DATA_PATH = Path(__file__).parent / "feature_data"