Displaying 20 results from an estimated 10000 matches similar to: "vector S4 classes"
2005 Sep 09
2
two almost identical packages: best practice
Hi
I have written a whole bunch of methods for objects of class "octonion".
[
an octonion is a single column of an eight-row matrix. Octonions have
their own multiplication rules and are a generalization of quaternions,
which are columns of a four-row matrix.
]
So far I've done about a dozen generic functions such as seq.octonion(),
rep.octonion(), [<-.octonion(), and so on
2008 Mar 26
5
S4 slot with NA default
Hi
How do I specify an S4 class with a slot that is potentially numeric,
but NA
by default? I want the slot to be NA until I calculate its value
(an expensive operation, not needed for all applications). When
its value is
known, I will create a new object with the correct value inserted in
the slot.
I want "NA" to signify "not known".
My attempt fails because
2005 Jan 07
1
Visualizing complex analytic functions using domain coloring
Hi
has anyone coded up domain colouring for visualizing complex analytic
functions
(such as elliptic functions)?
[
the idea is to depict a complex function f(z) using a filled.contour()
variant
in which the hue is given by Arg(f(z)), and the saturation by Mod(f(z)).
]
--
Robin Hankin
Uncertainty Analyst
Southampton Oceanography Centre
European Way, Southampton SO14 3ZH, UK
tel
2005 Jul 29
1
octonions
Hi
I thought it would be fun to develop R functionality for
the octonions (there is already some work on quaternions).
The octonions are an 8 dimensional algebra over the reals, so an
octonion
may nicely be represented as a real vector of length 8. Applications
are many and varied, mostly quantum mechanics.
I would like to develop some R functionality in this area.
My first problem is how
2006 Feb 22
3
elements that appear only once
Hi.
I have a factor and I want to extract just those elements that appear
exactly once.
How to do this?
Toy example follows.
> a <- as.factor(c(rep("oak",5) ,rep("ash",1),rep("elm",1),rep
("beech",4)))
> a
[1] oak oak oak oak oak ash elm beech beech beech beech
Levels: ash beech elm oak
> table(a)
a
ash beech elm oak
2006 Aug 30
1
setMethod() and log()
Hi
I am having difficulty with setMethod(). I have a "brob" class of
objects whose
representation has two slots: "x" and "positive". Slot "x" (double)
holds the log
of a number and slot "positive" (logical) its sign. The idea is
that large numbers
can be handled.
I'm trying to implement a log() method using an analogue of the
2006 Jul 27
4
inserting rows into a matrix
Hi
I have a little vector function that takes a vector A of strictly
positive integers
and outputs a matrix M each of whose columns is the vector, modified in
a complicated combinatorical way.
Now I want to generalize the function so that A can include zeroes.
Given A,
I want to strip out the zeroes, pass it to my function, and pad M
with rows at positions corresponding to the zeroes
2007 Mar 19
3
character to numeric conversion
Hi.
Is there a straightforward way to convert a character string
containing comma-delimited
numbers to a numeric vector?
In my application, I use
system(executable.string, intern=TRUE)
which returns a string like
"[0.E-38, 2.096751179214927596171268230,
3.678944959657480671183123052, 4.976528845643001020345216157,
6.072390165503099343887569007, 7.007958550337542210168866070,
2005 Jun 13
3
extracting components of a list
Hi
how do I extract those components of a list that satisfy a certain
requirement? If
jj <- list(list(a=1,b=4:7),list(a=5,b=3:6),list(a=10,b=4:5))
I want just the components of jj that have b[1] ==4 which in this case
would be the first and
third of jj, viz list (jj[[1]],jj[[3]]).
How to do this efficiently?
My only idea was to loop through jj, and set unwanted components to
NULL,
2006 Jul 25
2
pari/gp interface
Hi
I'm developing an R package that
needs to execute some code written in pari/gp.
I've used this before from an R package (elliptic) but the interface
is very
basic: the R function creates a string such as the following:
string <- echo ' ellwp ([ 2+0*I , 0+2*I ], 1+0*I )' | gp -q
And then
system(string)
returns the output from gp which then needs to be text processed
2004 Jun 11
4
rownames of single row matrices
Hi
I want to extract rows of a matrix, and preserve rownames even if only
one row is selected. Toy example:
R> a <- matrix(1:9,3,3)
R> rownames(a) <- letters[1:3]
R> colnames(a) <- LETTERS[1:3]
R> a
A B C
a 1 4 7
b 2 5 8
c 3 6 9
Extract the first two rows:
R> wanted <- 1:2
R> a[wanted,]
A B C
a 1 4 7
b 2 5 8
rownames come through fine. Now extract just
2007 Jan 16
5
"[[" gotcha
The following gotcha caught me off-guard just now.
I have two matrices, a and b:
a <- matrix(1,3,3)
b <- matrix(1,1,1)
(note that both "a" and "b" are matrices).
I want them in a list:
> B <- NULL
> B[[1]] <- a
> B[[2]] <- b
> B
[[1]]
[,1] [,2] [,3]
[1,] 1 1 1
[2,] 1 1 1
[3,] 1 1 1
[[2]]
[,1]
[1,] 1
2006 Nov 17
2
do.call("+", ...)
Hi
How do I make do.call() take "+" as a function for a list of more
than two elements?
Toy problem follows:
f <- function(i){matrix((1:6)^i,2,3)}
# Thus f() returns a matrix of size 2x3; I want to add a whole bunch
of such matrices,
# as in f(1) + f(2) + f(3) + f(4)
# But:
> do.call("+",sapply(1:4,f,simplify=FALSE))
Error in do.call("+",
2006 Oct 13
5
combinatorics
Hi
How do I generate all ways of ordering sets of indistinguishable items?
suppose I have two A's, two B's and a C.
Then I want
AABBC
AABCB
AACBC
ABABC
. . .snip...
BBAAC
. . .snip...
CBBAA
[there are 5!/(2!*2!) = 30 arrangements. Note AABBC != BBAAC]
How do I do this?
--
Robin Hankin
Uncertainty Analyst
National Oceanography Centre, Southampton
European Way, Southampton SO14
2006 Dec 14
4
two connected graphs
Hi
I have two datasets, A and B, consisting of two columns of numbers
representing x and y coordinates.
They have 10 and 6 rows respectively.
I want to plot two scattergraphs, one above the other.
The lower graph to contain A (10 points) and the upper
graph to contain B (six points).
The x-axes of the two graphs must line up.
I then want to draw straight lines that connect points
of B to a
2006 Jul 26
2
largest acceptable lookup table in a package
Hi
One of my packages needs a look-up table of pre-calculated
numbers in the data directory.
I would like to have the matrix as large as possible.
What is the largest size matrix that would be an acceptable datafile in
an R package?
[
The table is a square, upper triangular matrix
consisting of logs of Stirling numbers calculated by Maple.
As discussed on the List a few days ago (thanks
2007 Jun 27
1
inherits() and virtual classes
Hi
How do I test for an object having a particular virtual class?
In the following, "onion" is a virtual class, and "octonion" is
a non-virtual class contained in onion. The last call
to inherits() gives FALSE [R-2.5.0], when inherits.Rd led
me to expect TRUE.
setClass("onion",
representation = "VIRTUAL"
)
2005 Aug 31
3
generic function argument list problem
Hi
it says in R-exts that
A method must have all the arguments of the generic,
including ... if the generic does.
A method must have arguments in exactly the same order as the
generic.
A method should use the same defaults as the generic.
So, how come the arguments for rep() are (x, times, ...) and the
arguments
for rep.default() are (x, times, length.out, each, ...) ?
2004 Sep 08
3
do.call("[", ...) question
Hi again everyone
I have an arbitrarily dimensional array "a" and a list "jj" of length
length(dim(a)). The elements of jj are vectors of indexes.
How do I use do.call() to extract a[ jj[[1]], jj[[2]], jj[[3]], ...] ?
Toy example follows:
a <- matrix(1:30,5,6)
jj <- list(5:1,6:1)
I want the following
a[ jj[[1]],jj[[2]] ]
How do I do this?
OBAttempts:
2005 Mar 30
3
Recall() and sapply()
Hi.
I'm having difficulty following the advice given in help(Recall).
Consider the two
following toy functions:
f1 <- function(n){
if(length(n)>1){return(sapply(n,f1))}
matrix(n,n,n)
}
f2 <- function(n){
if(length(n)>1){return(sapply(n,Recall))}
matrix(n,n,n)
}
f1() works as desired (that is, f(1:3), say, gives me a three element
list whose i-th element
is an