[R] Dimension of a vector
Prof Brian Ripley
ripley at stats.ox.ac.uk
Wed Dec 5 07:20:32 CET 2007
On Wed, 5 Dec 2007, maj at stats.waikato.ac.nz wrote:
> Consider the following:
>> A <- 1:10
>> A
> [1] 1 2 3 4 5 6 7 8 9 10
>> dim(A)
> NULL
>> dim(A) <- c(2,5)
>> A
> [,1] [,2] [,3] [,4] [,5]
> [1,] 1 3 5 7 9
> [2,] 2 4 6 8 10
>> dim(A)
> [1] 2 5
>> dim(A) <- 10
>> A
> [1] 1 2 3 4 5 6 7 8 9 10
>> dim(A)
> [1] 10
>
> Would it not make sense to have dim(A) = length(A) for all vectors?
No. A one-dimensional array and a vector are not the same thing.
There are subtle differences, such as what names() means (see ?names).
That a 1D array and a vector _print_ in the same way does occasionally
lead to confusion, but then you also cannot tell from your printout that A
has type "integer" and not "double".
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-help
mailing list