【问题标题】:Re-classifying a random matrix重新分类随机矩阵
【发布时间】:2017-04-02 17:31:27
【问题描述】:

我是 R 的新手,急需帮助。我创建了一个随机矩阵,需要对其进行重新分类。每个像素都是从 0-255 随机生成的,我需要能够将 0-255 数字分类为 8 个类别。我该怎么做?任何帮助将不胜感激,我已将我的代码放在下面。我知道我可以使用光栅,但我不确定如何使用它们。

谢谢

par(mar=rep(0,4))

m=matrix(runif(100),10,10)

图像(m,axes=FALSE,col=grey(seq(0,1,length=255)))

【问题讨论】:

    标签: r matrix raster


    【解决方案1】:

    我认为您的示例不完全符合您对问题的描述(因为 runif 的范围仅在未指定限制的情况下为 0-1),因此我对其进行了修改以适应自然语言功能:

    m=matrix(runif(100, 0, 255),10,10)
    m[] <- findInterval(m, seq(0, 256, length=8) )
    
    image(m,axes=FALSE,col=grey(seq(0,1,length=255)))
    

    没有索引的“[]”保留了m 对象的矩阵结构。 findInterval 函数可让您执行与 cut 相同的分箱,但它返回一个数字向量,而不是 cut 给出的因子。

    【讨论】:

    • 感谢您的快速答复。但是,当我通过 R studio 运行它时,它会出现错误消息““m=matrix(runif(100,0,255),10,10 m"中的意外符号
    • 那里有一个隐式换行符,在我的粘贴中没有保存到未格式化的部分。现在应该会提供结果。
    猜你喜欢
    • 1970-01-01
    • 2012-02-23
    • 1970-01-01
    • 1970-01-01
    • 2014-09-19
    • 2016-06-30
    • 2017-08-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多