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

Kevin Zembower kev|n @end|ng |rom zembower@org
Wed Sep 13 20:04:48 CEST 2023


Well, I looked for this, on both the NWS and WeatherUnderground, but
couldn't find what I was looking for. Didn't check Weather.com, but if
you can find a chart of the average high and low temperatures in Ely,
MN between about the middle of September to the middle of October, I'll
buy you a beer.

-Kevin

On Wed, 2023-09-13 at 17:39 +0000, Ebert,Timothy Aaron wrote:
> 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%7C0d4da0f84a314d76ace60a623
> > > > 31
> > > > e1b84
> > > > %7C0%7C0%7C638302103358987487%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiM
> > > > C4
> > > > wLjAw
> > > > MDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C
> > > > %7
> > > > C&sda
> > > > ta=dfC3W%2F%2BBsZI0EaAx%2FocRgw81PSJH8sVZHPFB4rMyiaM%3D&reserve
> > > > d=
> > > > 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%7C7379ecec6a1e42280d160
> > > > 8db
> > > > b47df5e7%7C0d4da0f84a314d76ace60a62331e1b84%7C0%7C0%7C638302225
> > > > 313
> > > > 579978%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2lu
> > > > MzI
> > > > iLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=9U5h9tWTi
> > > > mMo
> > > > TGLnHvHCufVzw%2Bptd5m4prhLGwPYzx8%3D&reserved=0
> > > > -project.org%2Fposting-
> > > > guide.html&data=05%7C01%7Ctebert%40ufl.edu%7C41
> > > > f002949dac426196de08dbb4619001%7C0d4da0f84a314d76ace60a62331e1b
> > > > 84
> > > > %7C0%
> > > > 7C0%7C638302103358987487%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLj
> > > > Aw
> > > > MDAiL
> > > > CJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&s
> > > > da
> > > > 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%7C0d4da0f84a314d76ace60a6
> > > 233
> > > 1e1b84%7C0%7C0%7C638302225313579978%7CUnknown%7CTWFpbGZsb3d8eyJWI
> > > joi
> > > MC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000
> > > %7C
> > > %7C%7C&sdata=2Chr1XJ6IqitN92naJMKy%2FTl4QUfxM4hstlQBtr1JUs%3D&res
> > > erv
> > > 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%7C0d4da0f84a314d76ace60a62331e
> > > 1b8
> > > 4%7C0%7C0%7C638302225313579978%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC
> > > 4wL
> > > jAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7
> > > C%7
> > > C&sdata=e3eVmipjkORF5tGjzkla9AcvQ7c6VJR1nrSJYxFJaAM%3D&reserved=0
> > > and provide commented, minimal, self-contained, reproducible
> > > code.
> 
> 





More information about the R-help mailing list