如何在JAVA中打印显示出R语言算法的结果

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在JAVA中打印显示出R语言算法的结果相关的知识,希望对你有一定的参考价值。

如题,如果我需要在JAVA上调用了apriori算法,算法代码如下:
library(arules)
#从rattle包中读入数据
dvdtrans <- read.csv(system.file("csv", "dvdtrans.csv",package="rattle"))

数据结构如下,ID表示购物篮编号,Item表示物品。
ID Item
1 1 Sixth Sense
2 1 LOTR1
3 1 Harry Potter1
4 1 Green Mile
5 1 LOTR2
6 2 Gladiator

#将数据转化为合适的格式
data <- as(split(dvdtrans$Item, dvdtrans$ID),"transactions")

#用 apriori命令生成频繁项集,设其支持度为0.5,置信度为0.8
rules <- apriori(data, parameter=list(support=0.5,confidence=0.8))

#用inspect命令提取规则
inspect(rules)

结果:
lhs rhs support confidence lift
1 Patriot => Gladiator 0.6 1.0000000 1.428571
2 Gladiator => Patriot 0.6 0.8571429 1.428571
3 Sixth Sense => Gladiator 0.5 0.8333333 1.190476

这说明购买爱国者电影的顾客同时也会购买角斗士 :-)

如果我需要在JAVA中讲inspect(rules)的结果打印出来,应该怎么做?
试过这样:
Vector vector = new Vector();
REXP a = re.eval("inspect(rules)");
vector.addElement(a);
System.out.println(vector);
打印出来的是null
直接System.out.println(re.eval("inspect(rules)"));也不行……

求各路大神指导!!小弟感激不尽!

参考技术A java中调用操作系统控制台(就是命令行),控制台里运行R脚本(可以在命令行里用Rscript,不一定要在R环境底下写)。

实在不行试试weka。

利用队列打印出n行杨辉三角形.用C语言

参考技术A

其实根据原理来就可以了,程序在附件中,运行结果如下:


本回答被提问者采纳
参考技术B #include <stdio.h>
#define HANG 10
#define MAX 100
#define X(a) (a++)%MAX
int main()

int queue[MAX];
int r=0,l=0,n,m,i,j;
queue[X(r)]=0;
queue[X(r)]=1;
m=queue[X(l)];
for(i=0;i<HANG;i++)

queue[X(r)]=0;
for(j=0;j<i+2;j++)

n=m;
m=queue[X(l)];
queue[X(r)]=m+n;
if(n!=0)
printf("%d ",n);

printf("\n");


return 0;
追问

是那种输入n行然后打印的,这个是我们数据结构的题目

追答

#include
#define MAX 100
#define X(a) (a++)%MAX
int main()

int queue[MAX];
int r=0,l=0,n,m,i,j,h;
printf("输入杨辉三角的行数:");
scanf("%d",&h);
queue[X(r)]=0;
queue[X(r)]=1;
m=queue[X(l)];
for(i=0;i<h;i++)

queue[X(r)]=0;
for(j=0;j<i+2;j++)

n=m;
m=queue[X(l)];
queue[X(r)]=m+n;
if(n!=0)
printf("%d ",n);

printf("\n");


return 0;

以上是关于如何在JAVA中打印显示出R语言算法的结果的主要内容,如果未能解决你的问题,请参考以下文章

python语言下,如何实现控制台风格的进度显示?

利用队列打印出n行杨辉三角形.用C语言

使用带有R内核的jupyter笔记本,如何通过引用来抑制打印结果更新data.table?

Java如何刷新jlist中的sql结果

java如何实现异步模糊查询

Google Sheet Formula:如何计算并打印出数组结果?