On 07/17/2016 01:39 AM, Duncan Murdoch wrote:
On 16/07/2016 6:25 PM, Ashta wrote:
> Hi all,
>
> I have a large square matrix (60 x 60) and found it hard to
> visualize. Is it possible to change it as shown below?
>
> Sample example (3 x 3)
>
> A B C
> A 3 4 5
> B 4 7 8
> C 5 8 9
>
> Desired output
> A A 3
> A B 4
> A C 5
> B B 7
> B C 8
> C C 9
Yes, use matrix indexing. I don't think the 3600 values are going to be
very easy to read, but here's how to produce them:
m <- matrix(1:3600, 60, 60)
indices <- expand.grid(row = 1:60, col = 1:60)
cbind(indices$row, indices$col, m[as.matrix(indices)])
Or use as.data.frame.table():
m <- matrix(1:9, 3, 3,
dimnames = list(dimA = letters[1:3],
dimB = letters[1:3]))
m
as.data.frame.table(m, responseName = "value")
---
I do not know what you mean by "visualize", but image() or heatmap() are
good starting points if you need a plot of the values. If you really
need to inspect the raw values, you can try interactive (scrollable)
tables, e.g.:
library(DT)
m <- provideDimnames(matrix(1:3600, 60, 60))
datatable(m, options = list(pageLength = 60))
Cheers,
Denes
Duncan Murdoch
______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.