Wasn't sure where to add this but wanted to keep a log of this error in case either of us gets it in the future
To fix this the ember package code needs to be altered
File: C:\Users\brenn\PycharmProjects\Interpreter\Lib\site-packages\ember\__init__.py
def read_vectorized_features(data_dir, subset=None, feature_version=2):
"""
Read vectorized features into memory mapped numpy arrays
"""
if subset is not None and subset not in ["train", "test"]:
return None
extractor = PEFeatureExtractor(feature_version)
ndim = extractor.dim
X_train = None
y_train = None
X_test = None
y_test = None
if subset is None or subset == "train":
X_train_path = os.path.join(data_dir, "X_train.dat")
y_train_path = os.path.join(data_dir, "y_train.dat")
y_train = np.memmap(y_train_path, dtype=np.float32, mode="r+")
N = y_train.shape[0]
X_train = np.memmap(X_train_path, dtype=np.float32, mode="r+", shape=(N, ndim))
if subset == "train":
return X_train, y_train
if subset is None or subset == "test":
X_test_path = os.path.join(data_dir, "X_test.dat")
y_test_path = os.path.join(data_dir, "y_test.dat")
y_test = np.memmap(y_test_path, dtype=np.float32, mode="r+")
N = y_test.shape[0]
X_test = np.memmap(X_test_path, dtype=np.float32, mode="r+", shape=(N, ndim))
if subset == "test":
return X_test, y_test
return X_train, y_train, X_test, y_test
in np.memmap() function the mode is set to 'r+' instead of 'r'