Create histogram from data matrix
Looks to me that Holtman's solution was perfect:
> fdf <- read.table(textConnection(txt), header=T)
> fdf
IDdt Temp N.fish
1 200706183 5 456
2 200706183 5 765
3 200706183 4 567
4 200706183 3 876
5 200706183 3 888
6 200706183 2 111
7 200706184 8 2345
8 200706184 8 654
9 200706184 8 7786
10 200706184 7 345
11 200706184 6 234
12 200706184 6 123
> with(fdf, hist(rep(Temp, N.fish)) )
--
David Winsemius
On Apr 17, 2009, at 3:07 PM, Paul Warren Simonin wrote:
Thank you all for your advice. I have received some good tips, but it was suggested I write back with a small simulated data set to better illustrate my needs. So, currently my data frame looks something like: ID (date) Temperature Number of fish 200706183 5 456 200706183 5 765 200706183 4 567 200706183 3 876 200706183 3 888 200706183 2 111 200706184 8 2345 200706184 8 654 200706184 8 7786 200706184 7 345 200706184 6 234 200706184 6 123 I need to create a plots for each ID (date) of the number of fish observed at each temperature. Obviously my data frame is much larger. These plots do not have to be in a specific histogram format, but it seems this may be appropriate. Thanks for any additional advice as to how this may be done, either using plot commands or reformatting my data. It seemed the ggplot2 options may be good but so far I have tried qplot with no success: my most recent code looks like: qplot(temp,number of fish, geom="histogram",binwidth=1) I have tried various tweaks of this, but no success. Thanks for any advice! -Paul Simonin Quoting stephen sefick <ssefick at gmail.com>:
It would be easier if you were to make a data frame of fake values to illustrate your point, so that we could just copy it into an R session and see if we can't get it to work. So, a stab in the dark would to look at ggplot2 specifically the hist argument in qplot and the facets, the lattice package, or reshape to change the format of your data. If you want me to fool around with it use dput and take a small subset of your data or make up data to be able to be copied into an R session. hope that helps, Stephen On Fri, Apr 17, 2009 at 10:59 AM, Paul Warren Simonin <Paul.Simonin at uvm.edu> wrote:
Hello! Thanks for reading this request for assistance. I have a question regarding creating a histogram-like figure from data that are not currently in the correct format for the "hist" command. Specifically, my data have been processed and are in a matrix with columns containing the variables of interest and separate columns containing the number of times this variable was observed (counts). This data frame/matrix is rather large (1600 rows), and there are multiple rows corresponding to the same variable level (e.g., "temperature=8, 5 observations" in one row, then the next: "temperature=8, 9 observations", and so on). In other words, the data are not one long vector R can read and plot as a histogram, nor are they condensed. My goal is to create a figure in which one axis is bins (e.g., temperature values) and the other is number of observations in this bin (e.g., number of organisms seen). My question is: Is there a way R can be told to read my data to create a plot like that I desire? So far I have tried several options, including bar plots with no success. If there is no way to do this with my data as the are currently arrange, is there an efficient way to re-arrange them? Thanks a lot for any assistance or advice! Sincerely, Paul Simonin -- Paul W. Simonin Graduate Research Assistant, MS Program Vermont Cooperative Fish and Wildlife Research Unit The Rubenstein School of Environment and Natural Resources University of Vermont 81 Carrigan Dr. Burlington, VT 05405 Ph:802-656-3153
______________________________________________ R-help at 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.
-- Stephen Sefick Let's not spend our time and resources thinking about things that are so little or so large that all they really do for us is puff us up and make us feel like gods. We are mammals, and have not exhausted the annoying little problems of being mammals. -K. Mullis
-- Paul W. Simonin Graduate Research Assistant, MS Program Vermont Cooperative Fish and Wildlife Research Unit The Rubenstein School of Environment and Natural Resources University of Vermont 81 Carrigan Dr. Burlington, VT 05405 Ph:802-656-3153
______________________________________________ R-help at 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 Heritage Laboratories West Hartford, CT