Displaying 20 results from an estimated 10000 matches similar to: "matrix row product and cumulative product"
2008 Sep 03
2
optimizing speed of calculation (recursive product)
Dear list,
I'm wondering how to optimize functions/processes like the one shown
below (which simplifies something we're trying to do with very large
datasets).
In many cases I've noticed that using apply, sapply etc can help
speeding up processes, but in this case I don't see how I could do so.
a <- runif(10000000,0.5,1.6)
C <- 2
M <- 10000000
system.time( for (i in
2009 Sep 16
2
Generalized cumsum?
Is there anything like cumsum and cumprod but which allows you to
apply an arbitrary function instead of sum and product? In other words,
I want a function cumfunc(x, f) that returns a vector, so that for all n
up to the length of x
cumapply(x,f)[n] = f(x[1:n])
This would give cumsum and cumprod as special cases when f=sum or
f=prod.
I could write such a function, but I can't see
2011 Nov 27
1
generating a vector of y_t = \sum_{i = 1}^t (alpha^i * x_{t - i + 1})
Dear R-help,
I have been trying really hard to generate the following vector given
the data (x) and parameter (alpha) efficiently.
Let y be the output list, the aim is to produce the the following
vector(y) with at least half the time used by the loop example below.
y[1] = alpha * x[1]
y[2] = alpha^2 * x[1] + alpha * x[2]
y[3] = alpha^3 * x[1] + alpha^2 * x[2] + alpha * x[3]
.....
below are
2006 Feb 28
2
vector math: calculating a rolling 12 row product?
I have a dataframe of numeric values with 30 ?rows?
and 7 ?columns?.
For each column, beginning at ?row? 12 and down to
?row? 30, I wish to calculate the ?rolling 12 row
product?. I.e., within each column, I wish to
multiply all the values in row 1:12, 2:13,
19:30.
I wish to save the results as a new dataframe, which
will have 19 rows and 7 columns.
2010 Aug 23
1
Speeding up sum and prod
Looking for more ways to speed up R, I've found that large
improvements are possible in the speed of "sum" and "prod" for long
real vectors.
Here is a little test with R version 2.11.1 on an Intel Linux system
> a <- seq(0,1,length=1000)
> system.time({for (i in 1:1000000) b <- sum(a)})
user system elapsed
4.800 0.010 4.817
> system.time({for (i
2010 Apr 01
1
how to construct a time series
Hi,
I need to generate the time series of the production, but as I'm new to this
topic I am not able to do that. This is what the time series should be:
PROD(t)=PROD(t,T)
PROD(t-1)=PROD(t-1,T)
PROD(t-2)=PROD(t-1)*PROD(t-2,T-1)/PROD(t-1,T-1)
PROD(t-3)=PROD(t-2)*PROD(t-3,T-2)/PROD(t-2,T-2)
...
...
...
from PROD(t-2)...it will get the same expression; where PROD(t,T) is the value
of the
2010 May 05
1
testInstalledBasic question
Hi,
I'm currently in the process of writing an R-installation SOP for my
company. As part of that process I'm using the recommendations from the 'R
Installation and Administration' document, section 3.2, "Testing an
installation". This is done on an XP machine, using the latest binary of
2.11.0.
The binary is downloaded and then installed from the installer. I then
2009 Oct 29
2
fast cumulative matrix multiplication
Hi all,
I am looking for a function like cumprod() that works for matrix
multiplication.
In other words, I have matrices [M1, M2, ..., Mn], and I want to calculate
[M1, M1%*%M2, M1%*%M2%*%M3, ..., M1%*%...%*%Mn] as quickly as possible.
Right now I'm using a for() loop but it seems like there should be a faster
way.
Any help is appreciated!
Thanks,
Todd Schneider
todd.w.schneider@gmail.com
2008 Jan 13
3
product of vector elements
All,
I would like to find a simper method that I now have to find the
product of all elements in a vector:
#get product of vector elements: (1,2,3,4,5)
vec.product <- exp(sum(log(c(1,2,3,4,5))))
I have not found a vector product function, if one has been written.
Thanks,
Gerard
[[alternative HTML version deleted]]
2002 Sep 03
1
t(xmat)
Hi,
I have a matrix and time series "xmat". I have no problem executing any matrix functions except t(xmat) which gives the following error message. My question if "xmat" is a matrix why I can not execute this matrix function?? converting the time series and matrix into a data frame solves the problem
>dim(xmat)
[1] 98 7
> t(xmat)
Error in "tsp<-"(*tmp*,
2009 Oct 13
7
lapply() reccursively
Hi all,
I was wondering whether it is possible to use the lapply() function
to alter the value of the input, something in the spirit of :
a1<-runif(100)
a2<-function(i){
a1[i]<-a1[i-1]*a1[i];a1[i]
}
a3<-lapply(2:100,a2)
Something akin to a for() loop, but using the lapply() infrastructure.
I haven't been able to get rapply() to do this.
The reason is that the "real"
2004 Sep 16
1
Newbie q. need some help understanding this code.
dear all.
Would someone be kind and willing to explain the code
below for a person who has never used R? ( that is if
one has enough time and inclination)
It implements gillepsie's stochastic algorithm for
Lotka Volterra model.
What would help me tremendously is to see the
breakdown of the line by line code into plain english.
thanks for any insights or other comments.
sean
2005 Jul 07
3
xmat[1, 2:3] <- NULL
I have a situation where I'm filling out a dataframe
from a database. Sometimes the database query doesn't
get anything, so I end up trying to place NULL in the
dataframe like below.
> temp <- NULL
> xmat <- as.data.frame(matrix(NA, 2, 3))
> xmat[1, 2:3] <- temp
Error in if (m < n * p && (n * p)%%m)
stop(gettextf("replacement has %d items, need %d",
2005 Jul 22
1
find confounder in covariates
Hi,
I was wondering if there is a way, or function in R to
find confounders. For istance,
> a = sample( c(1:3), size=10,replace=T)
> X1 = factor( c('A','B','C')[a] )
> X2 = factor( c('Aa','Bb','Cc')[a] )
> Xmat = data.frame(X1,X2,rnorm(10),rnorm(10))
> dimnames(Xmat)[[2]] = c('z1','z2','z3','y')
Now,
2013 Sep 04
2
Random products of rows in a matrix
Hello everybody,
Without any loop and any package,
I would like to return N products of M rows in a matrix A :
Today, I managed to do it with a loop :
B <- matrix(NA, ncol = ncol(A), nrow = 0)
for (i in 1 : N) B <- rbind(B, apply(A[sample(1 : nrow(A), M, replace = T),
], 2, prod))
Do you have a solution ?
Thank you in advance !
[[alternative HTML version deleted]]
2009 Mar 05
3
methods package
I'm working on the next version of coxme, one step of which is converting
the bdsmatrix library from Splus to R. Actually, it is a conversion from
S4 methods as first described in the Green book to S4 methods as they
currently exist. Mostly it's going ok, but not entirely.
1. The biggest issue is lack of documentation. The online help pages have
not been a help; they keep saying
2004 Mar 03
1
match.call(), S4
I get different results from match.call(), according to whether a function
is dispatched via S3 or S4. Specifically, when I use S4 dispatch in the
following example, the match.call() result is of length 1 less than I
expect. I need to add an extra comma to get the same results as in the S3
method.
--------example
setClass("foo",representation("matrix"))
2007 Apr 13
3
apply problem
Dear R-Help
I am running apply on a data.frame containing factors and numeric
columns. It appears to convert are columns into as.character? Does it
convert data.frame into matrix? Is this expected? I wish it to recognise
numerical columns and round numbers. Can I use another function instead
of apply, or should I use a for loop in the case?
> summary(xmat)
A B
2011 May 07
3
help!! warning:only the first element has been used
i simply want a set of numbers in a vector which:
in the vector v, i want the numbers be (x[1]*x[2]*....*x[100],
x[2]*x[3]*...*x[100], x[3]*x[4]*...*x[100],...,x[98]*x[99]*x[100],
x[99]*x[100],x[100])
so there should be 100 elements in the vector.
here's how i do it
x=rnorm(100,0.5,0.2)
v=prod(x[(1:100):100])
but it turns out failed as it says there are 100 elements in the expression,
but only
2003 Mar 22
1
cumprod doesn't work with data frames (PR#2667)
Full_Name: J. Sisk
Version: 1.6.1
OS: Linux (RedHat 8)
Submission from: (NULL) (67.119.41.66)
Suppose you make a data-frame like so:
xxx <- data.frame(a=10,b=20,c=30,d=40)
Then
cumprod(xxx[1,])
returns
> cumprod(xxx[1,])
a b c d
1 10 20 30 40
The documentation for cumprod says that it should work on "numerical objects",
and this is a data-frame, but it