python - AttributeError:“numpy.ndarray”对象没有属性“getA1”
问题描述
在使用pyLDAvis.sklearn.prepare
可视化 LDA 主题模型时,我遇到了以下错误消息:
>>> pyLDAvis.sklearn.prepare(lda_model, dtm, vectorizer)
...
---> 12 return dtm.sum(axis=1).getA1()
...
AttributeError: 'numpy.ndarray' object has no attribute 'getA1'
作为 a传入dtm
会引发类似的错误:pyLDAvis.sklearn.prepare
pd.DataFrame
AttributeError: 'Series' object has no attribute 'getA1'
为什么会出现此错误消息?
解决方案
缺少的getA1
方法仅适用于numpy.matrix
对象。没有numpy.ndarray.getA1
方法,也没有pandas.Series.getA1
方法。
将文档向量转换为 anumpy.matrix
可以解决错误:
import pyLDAvis
import pyLDAvis.sklearn
pyLDAvis.enable_notebook()
dtm = np.matrix(document_vectors_arr)
pyLDAvis.sklearn.prepare(lda_model, dtm, vectorizer)
推荐阅读
- python - 将 2D 滤波器内核分解为 1D 内核
- centos - centos如何找到运行在443端口的指定服务并杀死它?
- android - Android 多共享元素过渡
- android - 防止安装具有特定包名称的 android 应用程序
- java - 在中国计算带有方位、距离和起点的新 gps 点时的假纵向
- mongodb - FreeBSD 11.1 工具上的 mongodb 3.6 缺失?
- python - Selenium (Python) 不会在两个选择下拉菜单之间切换
- python - 连接多行 Pyspark
- c++ - 在 C++ 中嗅探超文本 HTTP
- javascript - 如何将文章存储在 JSON 文件中?