Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用JAVA打印出混淆矩阵_Java_Matrix_Printing_Hashmap_Confusion Matrix - Fatal编程技术网

用JAVA打印出混淆矩阵

用JAVA打印出混淆矩阵,java,matrix,printing,hashmap,confusion-matrix,Java,Matrix,Printing,Hashmap,Confusion Matrix,这听起来可能很愚蠢!但是,我可以找到任何简单的例子来参考! 有人能举一个用java打印混淆矩阵的例子吗 类似这样的内容(输出): 假设HashMap中存储的数据如下 HashMap<String,Integer> String = "Head, Tail" Integer = 4 HashMap String=“头,尾” 整数=4 更新(示例代码): publicstaticvoidmain(字符串[]args){ HashMap cmatrix=新HashMap(); //字符

这听起来可能很愚蠢!但是,我可以找到任何简单的例子来参考! 有人能举一个用java打印混淆矩阵的例子吗

类似这样的内容(输出):

假设HashMap中存储的数据如下

HashMap<String,Integer>
String = "Head, Tail"
Integer = 4
HashMap
String=“头,尾”
整数=4
更新(示例代码):

publicstaticvoidmain(字符串[]args){
HashMap cmatrix=新HashMap();
//字符串部分可以容纳两个以上的值,全部用逗号分隔
cmatrix.put(“尾、头”,1);
cmatrix.put(“头、尾”,4);
cmatrix.put(“尾,尾”,1);
cmatrix.put(“头,头”,4);
对于(Map.Entry:cmatrix.entrySet()){
System.out.println(entry.getKey()+“:”+entry.getValue());
}
}

谢谢

为了简化代码,我们假设源数据中没有空格:

cmatrix.put("tail,head", 1);
cmatrix.put("head,tail", 4);
cmatrix.put("tail,tail", 1);
cmatrix.put("head,head", 4);
首先,我们需要收集类的名称:

Set<String> classNames = new HashSet<String>();
for(String key : cmatrix.keySet()) {
    String[] classes = key.split(",");
    if(classes != null && classes.length > 0) {
        classNames.addAll(Arrays.asList(classes));
    }
}
然后打印出每一行:

for(String actualClassName : sortedClassNames) {
    System.out.print(actualClassName);
    for(String predictedClassName : sortedClassNames) {
        Integer value = cmatrix.get(actualClassName + "," + predictedClassName);
        System.out.print("\t");
        if(value != null) {
            System.out.print(value);
        }
    }
    System.out.println();
}

我将把输出的“预绑定”留给读者作为练习。

为了简化代码,假设源数据中没有空格:

cmatrix.put("tail,head", 1);
cmatrix.put("head,tail", 4);
cmatrix.put("tail,tail", 1);
cmatrix.put("head,head", 4);
首先,我们需要收集类的名称:

Set<String> classNames = new HashSet<String>();
for(String key : cmatrix.keySet()) {
    String[] classes = key.split(",");
    if(classes != null && classes.length > 0) {
        classNames.addAll(Arrays.asList(classes));
    }
}
然后打印出每一行:

for(String actualClassName : sortedClassNames) {
    System.out.print(actualClassName);
    for(String predictedClassName : sortedClassNames) {
        Integer value = cmatrix.get(actualClassName + "," + predictedClassName);
        System.out.print("\t");
        if(value != null) {
            System.out.print(value);
        }
    }
    System.out.println();
}

我将把输出的“预绑定”留给读者作为练习。

为了简化代码,假设源数据中没有空格:

cmatrix.put("tail,head", 1);
cmatrix.put("head,tail", 4);
cmatrix.put("tail,tail", 1);
cmatrix.put("head,head", 4);
首先,我们需要收集类的名称:

Set<String> classNames = new HashSet<String>();
for(String key : cmatrix.keySet()) {
    String[] classes = key.split(",");
    if(classes != null && classes.length > 0) {
        classNames.addAll(Arrays.asList(classes));
    }
}
然后打印出每一行:

for(String actualClassName : sortedClassNames) {
    System.out.print(actualClassName);
    for(String predictedClassName : sortedClassNames) {
        Integer value = cmatrix.get(actualClassName + "," + predictedClassName);
        System.out.print("\t");
        if(value != null) {
            System.out.print(value);
        }
    }
    System.out.println();
}

我将把输出的“预绑定”留给读者作为练习。

为了简化代码,假设源数据中没有空格:

cmatrix.put("tail,head", 1);
cmatrix.put("head,tail", 4);
cmatrix.put("tail,tail", 1);
cmatrix.put("head,head", 4);
首先,我们需要收集类的名称:

Set<String> classNames = new HashSet<String>();
for(String key : cmatrix.keySet()) {
    String[] classes = key.split(",");
    if(classes != null && classes.length > 0) {
        classNames.addAll(Arrays.asList(classes));
    }
}
然后打印出每一行:

for(String actualClassName : sortedClassNames) {
    System.out.print(actualClassName);
    for(String predictedClassName : sortedClassNames) {
        Integer value = cmatrix.get(actualClassName + "," + predictedClassName);
        System.out.print("\t");
        if(value != null) {
            System.out.print(value);
        }
    }
    System.out.println();
}

我将把输出的“预处理”留给读者作为练习。

混淆矩阵非常复杂,值得研究开源解决方案。一个可以轻松集成到代码中而无需添加大量不必要的额外内容的方法是。其他data science/nlp软件包也将实现作为其发行版的一部分,即使使用整个库太多,源文件也可以提供如何执行的指导


使用其中一种方法的好处是,它们还免费提供一些度量标准,并且作为占位符矩阵,例如Cohen的Kappa度量和更基本的精度/召回率/和F-度量分数。

混淆矩阵足够复杂,值得研究开源解决方案。一个可以轻松集成到代码中而无需添加大量不必要的额外内容的方法是。其他data science/nlp软件包也将实现作为其发行版的一部分,即使使用整个库太多,源文件也可以提供如何执行的指导


使用其中一种方法的好处是,它们还免费提供一些度量标准,并且作为占位符矩阵,例如Cohen的Kappa度量和更基本的精度/召回率/和F-度量分数。

混淆矩阵足够复杂,值得研究开源解决方案。一个可以轻松集成到代码中而无需添加大量不必要的额外内容的方法是。其他data science/nlp软件包也将实现作为其发行版的一部分,即使使用整个库太多,源文件也可以提供如何执行的指导


使用其中一种方法的好处是,它们还免费提供一些度量标准,并且作为占位符矩阵,例如Cohen的Kappa度量和更基本的精度/召回率/和F-度量分数。

混淆矩阵足够复杂,值得研究开源解决方案。一个可以轻松集成到代码中而无需添加大量不必要的额外内容的方法是。其他data science/nlp软件包也将实现作为其发行版的一部分,即使使用整个库太多,源文件也可以提供如何执行的指导


使用其中一种方法的好处是,它们还可以免费提供一些度量标准,并作为占位符矩阵,例如科恩的卡帕度量和更基本的精度/回忆/和F-度量分数。

我以前从未听说过“混淆”矩阵。这是标准术语吗?编辑我想是:。至于你的解决方案——请展示你的代码、设置问题的代码以及你试图解决问题的代码。你的混淆矩阵让我太困惑了。请把你的问题写清楚,并分享你迄今为止尝试过的代码。谢谢:),我添加了示例代码:)我以前从未听说过“混乱”矩阵。这是标准术语吗?编辑我想是:。至于你的解决方案——请展示你的代码、设置问题的代码以及你试图解决问题的代码。你的混淆矩阵让我太困惑了。请把你的问题写清楚,并分享你迄今为止尝试过的代码。谢谢:),我添加了示例代码:)我以前从未听说过“混乱”矩阵。这是标准术语吗?编辑我想是:。至于你的解决方案——请展示你的代码、设置问题的代码以及你试图解决问题的代码。你的混淆矩阵让我太困惑了。请把你的问题写清楚,并分享你迄今为止尝试过的代码。谢谢:),我添加了示例代码:)我以前从未听说过“混乱”矩阵。这是标准术语吗?编辑我想是:。至于你的解决方案——请展示你的代码、设置问题的代码以及你试图解决问题的代码。你的混淆矩阵让我太困惑了。请清楚地写下您的问题,并分享您迄今为止尝试过的代码。谢谢:),我添加了示例代码:)很好,但在这行:classNames.addAll(Collections.toList(classes));托利斯特不被接受?它说“类型集合的toList(String[])方法未定义”,我将其替换为classNames.addAll(Arrays.asLi