不过我对 Java 真的不太熟悉,按照教程调用这个 LLDA 包之后只会使用 inferencer。

如果你不嫌麻烦可以考虑先用 Java 计算出结果,然后在 R 中载入这些结果.

具体步骤如下:

0 - 文件夹 JGibbLDA-v.1.0 放在 R 的工作目录下。

1 - 用 JDK 和他提供的 JGibbLDA-v.1.0\lib\args4j-2.0.6.jar 计算模型(官方例子)

$ java -mx512M -cp bin:lib/args4j-2.0.6.jar jgibblda.LDA -est -alpha 0.5 -beta 0.1 -ntopics 100 -niters 1000 -savestep 100 -twords 20 -dfile models/casestudy/newdocs.dat

2 - 步骤1输出的文件

.others

.phi

.theta

.tassign

.twords

3 - 在 R 中使用上面的模型对新数据做推断

library(rJava)

.jinit("JGibbLDA-v.1.0/bin/") #载入第三方类库

.jaddClassPath("JGibbLDA-v.1.0/bin/")

ldaOption

ldaOption$inf = TRUE

ldaOption$dir = "models/casestudy" # model 的路径

ldaOption$modelName = "model-final" # model 的名字,这里我们用的 model-final

ldaOption$niters = as.integer(100) # gibb sampling 次数

ldaOption$dfile = "newdata.dat" # 新的数据集,注意要按照指定的格式

inferencer

inferencer$init(ldaOption)

newModel

4 - 步骤3输出的文件

..others

..phi

..theta

..tassign

..twords

总结:

rJava 这个包还很不完善,而且有将近两年没有更新了,用起来到处采坑,我调了一下午才把整个流程打通。

我还是建议你就用 Java 做这个项目,函数都打包好了,看文档的例子自己做一遍应该就能上手了。

你还可以考虑用 MATLAB,有现成的工具包Topic Modeling Toolbox,开箱即用,MATLAB也不难学。

不局限于这一种实现的话,也有很多 R 包可以用:

希望能对你有帮助,谢谢。

r java_如何在R中使用JAVA写的程序包?相关推荐

  1. win7关闭java_如何在WIN7中关闭JAVA自动更新

    在win7系统上面安装了JAVA JRE或JDK后,就会启动一个jusched,它会定时检查更新,每次开机都会推荐更新或者升级,可能有的朋友在win7下无论如何都关不掉java客户端的自动更新,而又不 ...

  2. R沟通 | 如何在Typora中设置免费的图床

    简介 前段时间小编给大家推荐了一个markdown的IDE编辑器:Typora,具体推文如下:R沟通|markdown编辑器-Typora 和 R沟通 | 如何在Typora中设置免费的图床. 今天针 ...

  3. 如何在C++中嵌入JAVA程序

    如何在C++中嵌入JAVA程序呢?现在的程序员,不再像以前一样,掌握一种编程语言就可以混得有模有样了,这里为大家讲的,就是C++与Java混合编程.局域网聊天软件举几个简单的例子,一个软件为了快速开发 ...

  4. 如何在eclipse中导入Java项目文件包(方法截图详细步骤)

    如何在eclipse中导入Java项目文件包 首先新创建一个Java项目 第二步导入到我们新创建的Java项目文件包中 首先新创建一个Java项目 首先点击file->再点击new->点击 ...

  5. 在oracle中使用存储过程,如何在ORACLE中使用JAVA存储过程(详解)

    如何在Oracle中使用Java存储过程 (详解) 一.如何缔造java存储过程? 通常有三种步骤来缔造java存储过程. 1.使用oracle的sql语句来缔造: e.g.使用create or r ...

  6. 我们经常会用遇到一些文件需要网签,如何在word中制作手写签名?

    我们经常会用遇到一些文件需要网签,如何在word中制作手写签名? 目录 我们经常会用遇到一些文件需要网签,如何在word中制作手写签名? 1.在纸上写手好签名,用手机拍照上传至电脑上 2.打开word ...

  7. 在Tomcat中部署Java Web应用程序几种方式

    在Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署.在下文中$CATALINA_HOME指的是Tomcat根目录.  一.静态部署       静态部署指的是我们在服务器启动之 ...

  8. 使用Eclipse在Amazon Ec2中部署Java Web应用程序的完整指南

    嗨,读者们, 今天,我将向您展示如何使用Eclipse IDE在Amazon EC2中部署简单的Java Web应用程序. 在我们开始之前,我们需要一些必需的东西, Eclipse Java EE I ...

  9. 如何在IDEA中创建并部署JavaWeb程序

    本文来说下如何在 IDEA 中创建并部署 JavaWeb 程序 文章目录 概述 概述

最新文章

  1. linux 中 timeval结构体 - Neddy11 - 博客园
  2. hdu 4738 2013杭州赛区网络赛 桥+重边+连通判断 ***
  3. asyncio简单入门(二)
  4. 遭遇DBD::mysql::dr::imp_data_size unexpectedly
  5. HYDRAstor:可扩展的二级存储
  6. 小透明学弟的华为上岸之路
  7. HiJson 百度网盘下载
  8. Bootstrap-CSS全样式
  9. 计算机的有关英语单词大全,与计算机相关的英语词汇汇总
  10. 1s看懂555定时器,以及应用?
  11. word撰写论文时公式格式:公式居中,编号右对齐(编号上下居中或底部对齐);公式编号引用
  12. Bonny校园app使用体验
  13. 【全局盘点】华为云政企全栈技术创新能力图谱
  14. 计算机操作知识 p?p?t,计算机初级基本操作
  15. C# WPF设备监控软件(经典)-上篇
  16. Emlog程序纯黑色调CYP音乐模板源码
  17. 安全协议系列(三)----CCMP与WPA-PSK
  18. MP-BGP报文详解
  19. c语言组建怎样变成编译,c语言编译【处理流程】
  20. 以java语言为工具的粗糙的飞机大战游戏的开发与实现

热门文章

  1. 在5分钟内将Spring Boot作为Windows服务启动
  2. gradle web_简单的Gradle Web应用程序
  3. 使用Apache Storm和Apache Ignite进行复杂的事件处理(CEP)
  4. 介绍“又一个” Cloud Foundry Gradle插件
  5. 扩展Java EE应用程序的基础
  6. sun.misc.Unsafe苦难告诉我们什么
  7. java线程池并发_Java并发教程–线程池
  8. Hadoop开发工具简介
  9. 内存不足:杀死进程或牺牲孩子
  10. 借助Apache Hadoop大规模扩展Apache Solr实时实时索引