【发布时间】:2020-12-09 12:18:51
【问题描述】:
我想为数据帧df 中的一个热编码特征创建稀疏矩阵。但是我遇到了下面给出的代码的内存问题。 sparse_onehot 的形状为 (450138, 1508)
sp_features = ['id', 'video_id', 'genre']
sparse_onehot = pd.get_dummies(df[sp_features], columns = sp_features)
import scipy
X = scipy.sparse.csr_matrix(sparse_onehot.values)
我得到如下所示的内存错误。
MemoryError: Unable to allocate 647. MiB for an array with shape (1508, 450138) and data type uint8
我已经尝试scipy.sparse.lil_matrix 并得到与上述相同的错误。
有没有什么有效的方法来处理这个问题? 提前致谢
【问题讨论】:
-
你有什么操作系统?这对stackoverflow.com/questions/57507832/…有帮助吗?
-
我正在使用 aws sgaemaker 实例类型 ml.t2.medium
标签: python-3.x pandas scipy sparse-matrix amazon-sagemaker