【问题标题】:Return name:value pairs from R返回名称:来自 R 的值对
【发布时间】:2013-08-01 21:50:51
【问题描述】:

我正在编写一个 Java 程序,它使用 Rserve 从 R 获取结果。

我需要计算数组中元素的频率。例如,

array = [A, A, B, C]

我需要 R 才能返回

A  2
B  1
C  1

但是当我使用时

Rconnection c = new Rconnection();
double [] freq = c.eval(table(x)).asDoubles;
System.out.println(Arrays.toString(freq));

我明白了

[2 1 1]

这不是名称:值对。我怎么得到它?

非常感谢!!!!!!!!!

【问题讨论】:

    标签: java r rserve


    【解决方案1】:

    您正在为输出设置一个 double 类型的数组,而数组没有 key:value 结构。尝试查看 Java 数据结构 HashMap - 它有一个 key:value 结构。

    http://docs.oracle.com/javase/6/docs/api/java/util/HashMap.html

    如果 key:value 结构不是绝对必要的,您还可以尝试使用两个不同的数组,一个保存“键”,一个保存“值”。

    也许你可以设置另一个 String 类型的数组来保存你的 table(x) 的行名,如下所示:

    String [] key = c.eval(rownames(table(x)));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-30
      • 1970-01-01
      • 1970-01-01
      • 2015-12-27
      • 1970-01-01
      相关资源
      最近更新 更多