问题
Possible Duplicate:
how to apply a function to every row of a matrix (or a data frame) in RR - how to call apply-like function on each row of dataframe with multiple arguments from each row of the df
I want to apply a function to each row in a data frame, however, R applies it to each column by default. How do I force it otherwise?
> a = as.data.frame(list(c(1,2,3),c(10,0,6)),header=T)
> a
c.1..2..3. c.10..0..6.
1 1 10
2 2 0
3 3 6
> sapply(a,min)
c.1..2..3. c.10..0..6.
1 0
I wanted something like
1 2
2 0
3 3
回答1:
You want apply
(see the docs for it). apply(var,1,fun)
will apply to rows, apply(var,2,fun)
will apply to columns.
> apply(a,1,min)
[1] 1 0 3
来源:https://stackoverflow.com/questions/5330146/apply-a-function-to-each-row-in-a-data-frame-in-r