REngine 不调用 R Console

2024-04-23

从其中一个站点收集的代码,它不会从 REngine 调用 R Console。创建REngine后就断掉了,没有去try-catch。

问题:

Rengine re=new Rengine(args, true, new TextConsole2());
System.out.println("Rengine created, waiting for R");

示例代码 (rtest2.java) - rJava/examples

import java.io.*;

import java.awt.*;
import javax.swing.*;

import org.rosuda.JRI.Rengine;
import org.rosuda.JRI.REXP;
import org.rosuda.JRI.RMainLoopCallbacks;
import org.rosuda.JRI.RConsoleOutputStream;

class TextConsole2 implements RMainLoopCallbacks
{
    JFrame f;

    public JTextArea textarea = new JTextArea();

    public TextConsole2() {
        f = new JFrame();
        f.getContentPane().add(new JScrollPane(textarea));
        f.setSize(new Dimension(800,600));
        f.show();
    }

    public void rWriteConsole(Rengine re, String text, int oType) {
        textarea.append(text);
    }

    public void rBusy(Rengine re, int which) {
        System.out.println("rBusy("+which+")");
    }

    public String rReadConsole(Rengine re, String prompt, int addToHistory) {
        System.out.print(prompt);
        try {
            BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
            String s=br.readLine();
            return (s==null||s.length()==0)?s:s+"\n";
        } catch (Exception e) {
            System.out.println("jriReadConsole exception: "+e.getMessage());
        }
        return null;
    }

    public void rShowMessage(Rengine re, String message) {
        System.out.println("rShowMessage \""+message+"\"");
    }

    public String rChooseFile(Rengine re, int newFile) {
    FileDialog fd = new FileDialog(f, (newFile==0)?"Select a file":"Select a new file", (newFile==0)?FileDialog.LOAD:FileDialog.SAVE);
    fd.show();
    String res=null;
    if (fd.getDirectory()!=null) res=fd.getDirectory();
    if (fd.getFile()!=null) res=(res==null)?fd.getFile():(res+fd.getFile());
    return res;
    }

    public void   rFlushConsole (Rengine re) {
    }

    public void   rLoadHistory  (Rengine re, String filename) {
    }           

    public void   rSaveHistory  (Rengine re, String filename) {
    }           
}

public class rtest2 {
    public static void main(String[] args) {
        System.out.println("Press <Enter> to continue (time to attach the debugger if necessary)");
        try { System.in.read(); } catch(Exception e) {System.out.println("Exception"+e.toString());}
        System.out.println("Creating Rengine (with arguments)");
        Rengine re=new Rengine(args, true, new TextConsole2());
        System.out.println("Rengine created, waiting for R");
        if (!re.waitForR()) {
            System.out.println("Cannot load R");
            return;
        }
        System.out.println("re-routing stdout/err into R console");
        System.setOut(new PrintStream(new RConsoleOutputStream(re, 0)));
        System.setErr(new PrintStream(new RConsoleOutputStream(re, 1)));

        System.out.println("Letting go; use main loop from now on");
    }
}

None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

REngine 不调用 R Console 的相关文章

  • 如何检查字符串是否具有特定模式[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 用户输入任意字符串 程序会区分该字符
  • 完全缺失列的 VaR 计算

    我需要计算股票收益的滚动 VaR 从这篇文章 使用rollapply函数使用R进行VaR计算 https stackoverflow com questions 25045612 using rollapply function for v
  • GSON:自定义对象反序列化

    好吧 我编辑了这个问题 因为它不够清楚 Edit 2 更新了 JSON 文件 我在 Android 应用程序中使用 GSON 我需要解析来自服务器的 JSON 文件 而且有点太复杂了 我不想让我的对象结构太重 所以我想简化内容 所以我的对象
  • @NotNull.List 的目的

    当我查看标准时限制条件 http docs oracle com javaee 6 api javax validation constraints package summary html在 Bean Validation API JSR
  • 为什么 MetaSpace 大小是已用 MetaSpace 的两倍?

    我写了一个程序来模拟MetaSpace OOM 但我发现MetaSpace Size几乎总是两倍大Used MetaSpace Why 我用标志运行我的程序 XX MaxMetaspaceSize 50m 程序抛出OOM时Used Meta
  • 为什么 rbind 会抛出警告

    这与是否有更优雅的方法将不规则的数据转换为整洁的数据框 https stackoverflow com questions 25102617 are there more elegant ways to transform ragged d
  • 无法启动组件 [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/LabWebServletHibernate]]

    当使用 eclipse neon 1 在 tomcat 8 上运行应用程序时 我收到此错误 它使用 spring 4 3 3 hibernate 5 2 4 和 maven 嚴重 A child container failed durin
  • 首选项活动中的广告“没有足够的空间来显示广告!需要:<480, 75>,拥有:<432, 1073741823>”

    我试图在偏好活动中展示广告 但它从未出现 Logcat 始终显示消息 没有足够的空间来显示广告 想要 有 这就是我制作广告的方式 我对广告有自定义偏好 public class AdmobPreference extends Prefere
  • Keycloak 社交登录 REST API

    我已经为我的 keycloak 实例启用了谷歌社交登录 但我需要将其用作休息服务 是否有可用于执行此操作的端点 Keycloak 中没有 Google 身份验证 API 但您可以使用以下方法解决它代币交换 https www keycloa
  • 如何连接hibernate和DB2

    我正在运行一个使用 struts 和 hibernate 的应用程序 我目前正在使用 Derby 数据库 现在我必须转向 DB2 数据库 请告诉我 我必须做什么配置 休眠配置文件 我必须设置任何类路径吗 多变的 我知道 DB2 有两个 ja
  • 在 javafx 中注册鼠标处理程序,但处理程序不是内联的

    我有一个 JavaFX 应用程序变得有点大 我想保持代码的可读性 我有一个折线图 我希望内置缩放功能 该功能在单击鼠标时发生 我知道我需要向图表注册鼠标侦听器 我无法从 Oracle 示例中弄清楚什么 即如下所示 http docs ora
  • Spring @Value 添加验证小于

    我使用以下属性值注入 我如何向此操作添加小于验证 我的意思是我想设置一个验证user maxpassiveday可以说 财产价值不得低于 100 Value user maxpassiveday int maxpassiveday 使用Sp
  • Java 中意外的负数

    import java util public class Prac9FibonacciNumbers public static void main String args int x new int 100 x 0 1 x 1 1 fo
  • 将传入字符串的 unicode 表示形式转换为 UTF-8?

    我正在读取一些已经转换为 html 样式 代码的数据 我现在需要将其转换回 UTF 8 字符以供查看 不幸的是我无法使用浏览器查看该字符串 我读过有关 java 中的转换的内容 似乎如果你有一个 uxxxx 字符串 那么编译器会为你转换 然
  • 如何减少 JSF 中的 javax.faces.ViewState

    减少 JSF 中视图状态隐藏字段大小的最佳方法是什么 我注意到我的视图状态约为 40k 这会在每次请求和响应时下降到客户端并返回到服务器 特别是到达服务器时 这对用户来说会显着减慢 我的环境 JSF 1 2 MyFaces Tomcat T
  • 如何在Webview中保存用户名和密码

    目前 我还在学习Android开发的过程中 所以如果我的这个问题对你来说不太容易理解 请原谅 我创建了一个 Android 应用程序 它使用 RecyclerView 显示一组列表 当用户单击列表中的每个名称时 它会将它们重定向到一组不同的
  • 有时 Properties.load() 会跳过行

    在以下情况下 Properties load 会跳过 InputStream 的第二行 这是 Java 的错误还是正常行为 public class PropTest public static void main String args
  • 如果所有类不在同一个包中,Spring @autowired 不起作用

    我有四个包裹 com spring org Files HomeController java com spring org dao Files SubscriberDao java SubscriberDaoImpl java com s
  • 如何正确使用Google Calendar API Events.Insert命令?

    所以我一直使用REST方法来调用Google的API 我需要将事件插入到我拥有 ID 的特定日历中 这是我发送的 POST 请求 地址 https www googleapis com calendar v3 calendars https
  • 根据 Java 环境变量中的值创建使用 @JsonIgnore 的自定义注释

    我需要创建一个新的注释 用于在环境变量设置时忽略输出 JSON 文件中的字段var false 我尝试使用JsonAnnotationIntrospector 但无法获得预期的输出 public class Vehicle String v

随机推荐

  • 适用于 Android 的最佳 json rpc 2.0 库 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有用 php 编写的 json rpc 2 0 服务器 目前我正在寻找一个允许自动生成 json r
  • 如何在没有科学计数法的情况下显示“toPrecision”的结果?

    基于http www mredkj com javascript nfbasic2 html http www mredkj com javascript nfbasic2 html 以下代码将导致5 6e 2 num 555 55 res
  • 不同 zlib 压缩级别的压缩比

    我正在考虑使用什么级别的 zlib 压缩 并且我很好奇可以在 zlib 命令中指定的不同压缩级别的不同压缩率 这zlib手册 http www zlib net manual html Constants具有以下用于指定压缩级别的常量 de
  • Mongoose 默认值是否应用于现有文档?

    如果我向 Mongoose 架构添加属性并为其指定默认值 现有文档在加载时是否会收到这些默认值 是的 但如果查询是lean 对于返回完整 Mongoose 文档对象的查询 Thing find 每当属性丢失时都会返回默认值 无论架构何时更改
  • 按日期字符串索引时间序列

    给定一个时间序列 s 使用日期时间索引 我希望能够通过日期字符串对时间序列进行索引 我是否误解了这应该如何运作 import pandas as pd url http ichart finance yahoo com table csvs
  • 错误:“us”中的 Dialogflow 服务器收到了对位于“europe-west2-dialogflow.googleapis.com”中的资源的请求。

    我想使用对话流检测意图 但由于某些原因 我的对话流代理所在区域是 europe west2 因此 为了指定位置 我使用 Dialogflow API 的 v2beta1 版本 如文档中所述 但它不起作用 我有以下错误Dialogflow s
  • Scala:研讨会建议

    我被邀请为 PHP 观众举办一个 Scala 研讨会 这些人中的很多人根本没有接触过函数式编程语言 所以我想知道如何以某种方式介绍他们 以便他们充分利用它 我听说很多人很难理解高阶函数等 你有什么经历 我不想用太先进的东西吓跑他们 也不想让
  • 删除 ImageView 会导致某些手机崩溃

    因此 出于某种原因 在我的 Samsung Galaxy S2 Android 版本 4 0 4 上尝试从relativelayout 中删除 ImageView 时 我得到了 NPE 这是运行的代码行 mainView removeVie
  • 多周期持久化、向量化、时间序列python

    我有一个包含每日值的 DataFrame 并且我正在使用各种方法来预测未来两周的值 作为一个基础的 天真的预测 我只想简单地说今天的价值是未来两周的最佳预测 例如 的值01 Jan 2012 is 100 那么我想要预测02 Jan 201
  • 在 RecyclerView android 中拖放期间面临位置值问题

    如何在 RecyclerView 适配器中拖放时获取新的位置值 拖放工作正常 但是当我设置 setOnClickListener 打开我的详细活动时 它给了我旧的位置值 例如 如果我拖动第二个项目 INDEX 1 并放在第一个项目的位置 I
  • 隐藏图中某些图形对象的 MATLAB 图例条目

    MATLAB 图例列出了绘图中的所有内容 包括您在绘图上放置的指南 绕过这个问题的软糖就是要做的 Plot Add legend Add guidelines 然而 MATLAB 将最新的行放在前面 这意味着指南将位于显示的数据之上 丑陋且
  • varchar 变量的字符串比较失败

    我无法理解为什么会得到以下结果 declare myVar1 varchar Friday declare myVar2 varchar 10 Friday select case when myVar1 Friday then yes e
  • UiAutomator getLastTraversedText()

    我试图使用 Android UiAutomator 测试 Android Webview 据我了解文档 http developer android com tools help uiautomator UiDevice html getL
  • Python 中匹配“中文+数字”模式的正则表达式

    在Python 3 3中 我想匹配下面的模式 但它总是失败 摄氏零下253 我使用了下面的正则表达式 x00 x47 x58 x7F 它不是排除除数字之外的所有 ascii 吗 根据您使用的编程语言 您可以使用以下内容 p Han p N
  • 如何在Linux中使用相对路径打开文件?

    我有一个程序 它使用相对路径 例如 打开文件 现在的问题是 当我从另一个目录执行程序时 相对路径不是相对于程序而是相对于工作目录 因此 如果我使用 path to program myprog 启动程序 它将无法找到该文件 有没有办法独立于
  • 你能检测到 UIViewController 何时被解除或弹出吗?

    每当我的视图控制器之一被解除 弹出 卸载时 我都需要在共享资源中执行一些清理 这可能是当用户点击该单个屏幕上的后退按钮时 或者调用 popToRootViewController 时 在这种情况下 理想情况下我能够清除弹出的每个控制器 显而
  • 创建子列表[重复]

    这个问题在这里已经有答案了 与列表扁平化相反 给定一个列表和长度 n 返回长度为 n 的子列表的列表 def sublist lst n sub result for i in lst sub i if len sub n result s
  • 禁用 RVM 还是使用未安装 RVM 的 Ruby?

    对于 Rails 应用程序 我安装了 Ruby 1 8 7 和 Rails 2 3 11 而且运行良好 之后我安装了 RVM 和 REE 因此 在运行 ruby 脚本 服务器时 它使用 REE 但现在我想使用较旧的 Ruby 1 8 7 它
  • 如何在intelliJ IDEA中分离spring上下文

    我在配置 IntelliJ IDEA 来开发 spring 和 Maven 支持的应用程序时遇到问题 应用程序有两个独立的弹簧配置 用于生产和测试目的 在 IDEA 的 Spring Facet props 中 我创建了两个不同的文件集 但
  • REngine 不调用 R Console

    从其中一个站点收集的代码 它不会从 REngine 调用 R Console 创建REngine后就断掉了 没有去try catch 问题 Rengine re new Rengine args true new TextConsole2