Я читал некоторые текстовые файлы и разбивал все слова этих текстовых файлов и сохранял их в списке. Тогда я занимался кодированием. Когда размер текстовых файлов превышает 1 МБ, я столкнулся с проблемой MemoryError. Вот мой код
from numpy import array
import os
from sklearn.preprocessing import LabelEncoder
from sklearn.preprocessing import OneHotEncoder
path="D://DATA//"
data=[]
for file in os.listdir(path):
print(file)
if file.endswith(".txt"):
with open(os.path.join(path, file), 'r',encoding="utf8") as f:
d1=f.read()
data+=d1.split()
print(data)
values = data
# integer encode
label_encoder = LabelEncoder()
integer_encoded = label_encoder.fit_transform(values)
onehot_encoder = OneHotEncoder(sparse=False)
integer_encoded = integer_encoded.reshape(len(integer_encoded), 1)
onehot_encoded = onehot_encoder.fit_transform(integer_encoded)
print(onehot_encoded)
Это ошибка, которую я получаю
Traceback (most recent call last):
File "C:/Users/Desktop/onehot.py", line 21, in <module>
onehot_encoded = onehot_encoder.fit_transform(integer_encoded)
File "C:\Users\AppData\Local\Programs\Python\Python37\lib\site-packages\sklearn\preprocessing\_encoders.py", line 516, in fit_transform
self._categorical_features, copy=True)
File "C:\Users\AppData\Local\Programs\Python\Python37\lib\site-packages\sklearn\preprocessing\base.py", line 52, in _transform_selected
return transform(X)
File "C:\Users\AppData\Local\Programs\Python\Python37\lib\site-packages\sklearn\preprocessing\_encoders.py", line 489, in _legacy_fit_transform
return out if self.sparse else out.toarray()
File "C:\Users\AppData\Local\Programs\Python\Python37\lib\site-packages\scipy\sparse\compressed.py", line 962, in toarray
out = self._process_toarray_args(order, out)
File "C:\Users\AppData\Local\Programs\Python\Python37\lib\site-packages\scipy\sparse\base.py", line 1187, in _process_toarray_args
return np.zeros(self.shape, dtype=self.dtype, order=order)
MemoryError
Я использовал Python 64bit ...
Я искал такого рода проблемы, и им сказали изменить gcv_mode. Я не знаю, как я могу использовать в этом случае. пожалуйста, помогите с этим. Заранее спасибо