On Apr 25, 2010, at 11:30 PM, robert lee wrote:
Wanted to thank David and Jim for the str. The x and y were
created using the function below. In one case, reshape1 returned
list and other data frame. I put the fix by putting the
as.data.frame below
I hope you are making progress on your own, because you are using non-
base functions and not telling us where they came from and still have
not offered the requested information from the last post. I cannot see
where you made any assignments to x or y, so I am in the dark
entirely. Read the Posting Guide, indicate where non-base functions
come from and post more details if you want more help.
(And learn to post in plain text, please, as noted in Posting Guide.)
--
David.
myPivot <- function(y,x,z,m, ...){
m1 <- m[c(x,y,z)] # select the the columns wanted
m2 <- melt(m1, id=c(y,x))
pivot <- as.data.frame(reshape1(m2,list(y,x))) # time , cpu, idl
# hack below as pivot[y] does not work. need to research
row.names(pivot) <- pivot$time # put the time as the row names
pivot <- pivot[,2:dim(pivot)[2]] # remove time from column
return(as.data.frame(pivot))
}
On Apr 25, 2010, at 11:07 PM, David Winsemius wrote:
On Apr 25, 2010, at 10:15 PM, robert lee wrote:
I have two data frames ( x and y -- sample values below). The
rows have HH:MM:SS and columns have names of devices.
I am trying to find a list of 5 least used devices during recorded
time period. When apply function is used to sum on the column, I
get the correct answer on data frame called x, but not for y. The
data type of return answer is different and I cannot figure out
why. Any insight into what is happening of possibly different
simpler ways to do this would be appreciated.
colnames(t(sort(apply(x,2,sum))[1:5]))
[1] "5x" "6x" "7x" "4x" "103x"
Why are you getting colnames on the transpose of x?
# the above returns the answer I am trying to get
colnames(t(sort(apply(y,2,sum))[1:5]))
NULL
Again. Why get colnames on transpose?
# the above does not
below is sample data and output of the apply for each
x
0x 1x 2x 3x 4x 5x 6x 7x 32x 33x 34x 35x 36x 37x 38x 39x 64x
65x 66x 67x 68x
13:55:24 21 18 18 18 17 16 16 17 29 29 25 23 19 18 18 21
24 22 22 21 20
13:55:54 16 3 3 4 4 1 1 6 40 29 16 9 6 23 19 21
27 19 29 15 19
13:56:24 3 2 6 2 1 1 4 1 33 40 28 13 10 2 4 15
25 17 8 14 11
[ truncated .... ]
You have not told us how you constructed "x" and it is undoubtedly
important. We probably need at the very least the results of str(x)
and str(y). This looks like a zoo object which is not a data.frame.
apply(x,2,sum)
0x 1x 2x 3x 4x 5x 6x 7x 32x 33x 34x
35x 36x 37x
12042 11411 11343 11237 10937 10811 10909 10911 18341 16055 14406
13770 12252 12003
38x 39x 64x 65x 66x 67x 68x
12266 13450 15426 14163 13913 13615 12972
So where did these extra columns come from>
69x 70x 71x 96x 97x 98x 99x
12656 13089 13329 12671 12562 12336 12045
100x 101x 102x 103x
11476 11212 11066 10997
y
nfs6 sd0 sd1 sd30 sd31 sd36 sd6 ssd100 ssd101 ssd102 ssd103
ssd104 ssd105
13:55:54 0 2 0 0 0 0 0 0 0 0
0 0 0
13:56:54 0 3 0 0 0 0 0 0 0 0
0 0 0
13:57:54 0 1 0 0 0 0 0 0 0 0
0 0 0
13:58:54 0 1 0 0 0 0 0 0 0 0
0 0 0
[ truncated .... ]
This might or might not be a data.frame. Doing a transpose on a
data.frame might have the side-effect of NULLing out the resulting
colnames.
apply(y,2,sum)
[1] 0 515 0 0 0 0 0 96 0 0 0 90
0 0 0 0
[17] 0 1 13 96 0 31 0 0 0 0 0
0 0 0 11 0
[33] 0 0 12 0 0 0 0 0 0 0 16
0 0 0 0 0
[49] 31 0 0 0 0 0 0 0 0 10 0
0 0 0 0 0
[65] 0 0 7 0 0 84 337 642 1005 0 605
518 0 0 5 0
[81] 0 86 335 646 1014 0 606 513 0 737 418 306
277 607 301 410
[97] 1690 445 432 0 738 424 315 283 608 302 411 1688
446 431 0 0
[113] 0 0 0 93 0 0 0 0 0 1 12
0 0
______________________________________________
R-help@r-project.org mailing list
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.
David Winsemius, MD
West Hartford, CT
David Winsemius, MD
West Hartford, CT
______________________________________________
R-help@r-project.org mailing list
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.