У меня есть датафрейм Pandas, скажем, data.
На ноутбуке, который является 32-битным и имеет 2 ГБ оперативной памяти, я делаю это:
>>>data.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 1000209 entries, 0 to 1000208
Data columns (total 5 columns):
UserID 1000209 non-null int32
MovieID 1000209 non-null int32
Ratings 1000209 non-null int32
Age 1000209 non-null int32
Occupation 1000209 non-null int32
dtypes: int32(5)
memory usage: 58.7 MB
На этом фрейме данных я делаю классификацию RandomForest -
>>>X = data.drop('Ratings', axis = 1)
>>>y = data['Ratings']
>>>from sklearn.model_selection import train_test_split
>>>Xtrain, Xtest, ytrain, ytest = train_test_split(X, y, random_state=1)
>>>from sklearn.ensemble import RandomForestClassifier
>>>model = RandomForestClassifier(n_estimators=100, random_state=0)
>>>model.fit(Xtrain, ytrain)
>>>model.predict(Xtest)
Но выдает следующую ошибку
MemoryError: could not allocate 50331648 bytes
Я чувствую, что это как-то связано со спецификациями ноутбука, которым я пользуюсь, но все же я не понимаю, почему это происходит. Могу ли я в любом случае заняться этим?