我想对短文本进行主题建模。我对 LDA 做了一些研究,发现它不太适合短文本。哪些方法会更好?它们有 Python 实现吗?
我有一个这样的数据框:
id|c1|c2|c3|c4...
0|s:1,g:B,r:2|s:2,g:A,r:3|s:1,g:C,r:4|s:3,g:D,r:2.....
1|NaN|s:2;g:E,r:4|s:3;g:C,r:3|s:3;g:F,r:3.....
Run Code Online (Sandbox Code Playgroud)
我想像这样重新排列数据框:
id|c|s|g|r
0|c1|1|B|2
0|c2|2|A|3
0|c3|1|C|4
0|c4|3|D|2
1|c1|NaN|NaN|NaN
1|c2|2|E|4
1|c3|3|C|3
1|c4|3|F|3
Run Code Online (Sandbox Code Playgroud)
我尝试了以下方法:
df.melt()
Run Code Online (Sandbox Code Playgroud) 运行以下代码时出现此错误:
from sklearn.decomposition import LatentDirichletAllocation
Run Code Online (Sandbox Code Playgroud)
导入错误:无法从部分初始化的模块“sklearn”导入名称“__check_build”(很可能是由于循环导入)。
当我检查pip freezescikit-learn 已安装时。另外,我尝试卸载并重新安装 sklearn,现在我遇到了不同的错误:
ERROR: Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: 'C:\\Users\\<user>\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python38\\site-packages\\sklearn\\datasets\\tests\\data\\openml\\292\\api-v1-json-data-list-data_name-australian-limit-2-data_version-1-status-deactivated.json.gz'
Run Code Online (Sandbox Code Playgroud)