[R] Help with plotting and date-times for climate data

Ebert,Timothy Aaron tebert @end|ng |rom u||@edu
Wed Sep 13 19:39:14 CEST 2023


I admire the dedication to R and data science, but the Weather Channel might be a simpler approach. Weather.com. I can search for (city name) and either weather (current values) or climate. It depends on how far away the trip will be.

-----Original Message-----
From: Kevin Zembower <kevin using zembower.org> 
Sent: Wednesday, September 13, 2023 1:22 PM
To: Richard O'Keefe <raoknz using gmail.com>; Ebert,Timothy Aaron <tebert using ufl.edu>
Cc: r-help using r-project.org
Subject: Re: [R] Help with plotting and date-times for climate data

[External Email]

Tim, Richard, y'all are reading too much into this. I believe that TMAX is the high temperature of the day, and TMIN is the low. I'm trying to compute the average or median high and low temperatures for the data I have (2011 to present). I'm going on a trip to this area, and want to know how to pack.

Thanks for your interest.

-Kevin

On Thu, 2023-09-14 at 03:07 +1200, Richard O'Keefe wrote:
> I am well aware of the physiological implications of temperature, and 
> that is *why* I view recorded TMIN and TMAX at a single point with an 
> extremely jaundiced eye.  TMAX at shoulder height has very little 
> relevance to an insect living in grass, for example.  And if TMAX is 
> sustained for one second, that has very different consequences from if 
> TMAX is sustained for five minutes.  I can see the usefulness of 
> "proportion of day above Thi/below Tlo", but that is quite different.
>
> OK, so my interest in weather data was mainly based around water 
> management: precipitation, evaporation, herd and crop water needs, 
> that kind of thing.  And the first thing you learn from that 
> experience is that ANY kind of single-point summary is seriously 
> misleading.
>
> Let's end this digression.
>
>
> On Thu, 14 Sept 2023 at 02:18, Ebert,Timothy Aaron <tebert using ufl.edu>
> wrote:
> > I had the same question.
> > However, I can partly answer the off-topic question. Min and max can 
> > be important as lower and upper development thresholds. Below the 
> > min no growth or development occur because reaction rates are too 
> > slow to enable such. Above max, temperatures are too hot.
> > Protein function is impaired, and systems stop functioning. There is 
> > a considerable range between where systems shut down (but
> > recover) and tissue death.
> > In a simple form the growth and physiological stage of plants, 
> > insects, and many others, can be modeled as a function of 
> > temperature. These are often called growing degree day models (or 
> > some version of that). This is number of thermal units needed for 
> > the organism to develop to the next stage (e.g. instar for an 
> > insect, or fruit/flower formation for a plant). However, better 
> > accuracy is obtained if the model includes both min and max 
> > thresholds.
> >
> > All I have done is provide an example where min and max could have a 
> > real world use. I use max(temp) over some interval and then update 
> > an accumulated thermal units variable based on the outcome.
> > That detail is not evident in the original request.
> >
> > Tim
> >
> > -----Original Message-----
> > From: R-help <r-help-bounces using r-project.org> On Behalf Of Richard 
> > O'Keefe
> > Sent: Wednesday, September 13, 2023 9:58 AM
> > To: Kevin Zembower <kevin using zembower.org>
> > Cc: r-help using r-project.org
> > Subject: Re: [R] Help with plotting and date-times for climate data
> >
> > [External Email]
> >
> > Off-topic, but what is a "mean temperature max"
> > and what good would it do you to know you if you did?
> > I've been looking at a lot of weather station data and for no 
> > question I've ever had (except "would the newspapers get excited 
> > about this") was "max" (or min) the answer.  Considering the way 
> > that temperature can change by several degrees in a few minutes, or 
> > a few metres -- I meant horizontally when I wrote that, but as you 
> > know your head and feet don't experience the same temperature, again 
> > by more than one degree -- I am at something of a loss to ascribe 
> > much practical significance to TMAX.  Are you sure this is the 
> > analysis you want to do?  Is this the most informative data you can 
> > get?
> >
> > On Wed, 13 Sept 2023 at 08:51, Kevin Zembower via R-help < 
> > r-help using r-project.org> wrote:
> >
> > > Hello,
> > >
> > > I'm trying to calculate the mean temperature max from a file of 
> > > climate date, and plot it over a range of days in the year. I've 
> > > downloaded the data, and cleaned it up the way I think it should 
> > > be.
> > > However, when I plot it, the geom_smooth line doesn't show up. I 
> > > think that's because my x axis is characters or factors. Here's 
> > > what I have so far:
> > > ========================================
> > > library(tidyverse)
> > >
> > > data <- read_csv("Ely_MN_Weather.csv")
> > >
> > > start_day = yday(as_date("2023-09-22")) end_day =
> > > yday(as_date("2023-10-15"))
> > >
> > > d <- as_tibble(data) %>%
> > >      select(DATE,TMAX,TMIN) %>%
> > >      mutate(DATE = as_date(DATE),
> > >             yday = yday(DATE),
> > >             md = sprintf("%02d-%02d", month(DATE), mday(DATE))
> > >             ) %>%
> > >      filter(yday >= start_day & yday <= end_day) %>%
> > >      mutate(md = as.factor(md))
> > >
> > > d_sum <- d %>%
> > >      group_by(md) %>%
> > >      summarize(tmax_mean = mean(TMAX, na.rm=TRUE))
> > >
> > > ## Here's the filtered data:
> > > dput(d_sum)
> > >
> > > > structure(list(md = structure(1:25, levels = c("09-21", "09- 
> > > > 22",
> > > "09-23", "09-24", "09-25", "09-26", "09-27", "09-28", "09-29", 
> > > "09-30", "10-01", "10-02", "10-03", "10-04", "10-05", "10-06", 
> > > "10-07", "10-08", "10-09", "10-10", "10-11", "10-12", "10-13", 
> > > "10-14", "10-15"), class = "factor"), tmax_mean = c(65, 
> > > 62.2222222222222, 61.3, 63.8888888888889, 64.3, 60.1111111111111, 
> > > 62.3, 60.5, 61.9, 61.2, 63.6666666666667, 59.5, 59.5555555555556, 
> > > 61.5555555555556, 59.4444444444444, 58.7777777777778, 
> > > 55.8888888888889, 58.125, 58, 55.6666666666667, 57, 
> > > 55.4444444444444, 49.7777777777778, 48.75, 43.6666666666667)), 
> > > class = c("tbl_df", "tbl", "data.frame"
> > > ), row.names = c(NA, -25L))
> > > >
> > > ggplot(data = d_sum, aes(x = md)) +
> > >      geom_point(aes(y = tmax_mean, color = "blue")) +
> > >      geom_smooth(aes(y = tmax_mean, color = "blue")) 
> > > =====================================
> > > My questions are:
> > > 1. Why isn't my geom_smooth plotting? How can I fix it?
> > > 2. I don't think I'm handling the month and day combination 
> > > correctly.
> > > Is there a way to encode month and day (but not year) as a date?
> > > 3. (Minor point) Why does my graph of tmax_mean come out red when 
> > > I specify "blue"?
> > >
> > > Thanks for any advice or guidance you can offer. I really 
> > > appreciate the expertise of this group.
> > >
> > > -Kevin
> > >
> > > ______________________________________________
> > > R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see 
> > > https://stat/
> > > .ethz.ch%2Fmailman%2Flistinfo%2Fr-
> > > help&data=05%7C01%7Ctebert%40ufl.edu
> > > %7C41f002949dac426196de08dbb4619001%7C0d4da0f84a314d76ace60a62331
> > > e1b84
> > > %7C0%7C0%7C638302103358987487%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4
> > > wLjAw
> > > MDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7
> > > C&sda
> > > ta=dfC3W%2F%2BBsZI0EaAx%2FocRgw81PSJH8sVZHPFB4rMyiaM%3D&reserved=
> > > 0
> > > PLEASE do read the posting guide
> > > https://nam10.safelinks.protection.outlook.com/?url=http%3A%2F%2Fw
> > > ww.r%2F&data=05%7C01%7Ctebert%40ufl.edu%7C7379ecec6a1e42280d1608db
> > > b47df5e7%7C0d4da0f84a314d76ace60a62331e1b84%7C0%7C0%7C638302225313
> > > 579978%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzI
> > > iLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=9U5h9tWTimMo
> > > TGLnHvHCufVzw%2Bptd5m4prhLGwPYzx8%3D&reserved=0
> > > -project.org%2Fposting-
> > > guide.html&data=05%7C01%7Ctebert%40ufl.edu%7C41
> > > f002949dac426196de08dbb4619001%7C0d4da0f84a314d76ace60a62331e1b84
> > > %7C0%
> > > 7C0%7C638302103358987487%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAw
> > > MDAiL
> > > CJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sda
> > > ta=zR
> > > IyH2os0w%2Bi1M26YCGqRFZyXNN6KnS2ddNrEZ9BvVo%3D&reserved=0
> > > and provide commented, minimal, self-contained, reproducible code.
> > >
> >
> >         [[alternative HTML version deleted]]
> >
> > ______________________________________________
> > R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> > https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fst
> > at.ethz.ch%2Fmailman%2Flistinfo%2Fr-help&data=05%7C01%7Ctebert%40ufl
> > .edu%7C7379ecec6a1e42280d1608dbb47df5e7%7C0d4da0f84a314d76ace60a6233
> > 1e1b84%7C0%7C0%7C638302225313579978%7CUnknown%7CTWFpbGZsb3d8eyJWIjoi
> > MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C
> > %7C%7C&sdata=2Chr1XJ6IqitN92naJMKy%2FTl4QUfxM4hstlQBtr1JUs%3D&reserv
> > ed=0
> > PLEASE do read the posting guide
> > https://nam10.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww
> > .r-project.org%2Fposting-guide.html&data=05%7C01%7Ctebert%40ufl.edu%
> > 7C7379ecec6a1e42280d1608dbb47df5e7%7C0d4da0f84a314d76ace60a62331e1b8
> > 4%7C0%7C0%7C638302225313579978%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wL
> > jAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7
> > C&sdata=e3eVmipjkORF5tGjzkla9AcvQ7c6VJR1nrSJYxFJaAM%3D&reserved=0
> > and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list