[R] empty data frame and POSIXct data types

Olivier Crouzet o||v|er@crouzet @end|ng |rom un|v-n@nte@@|r
Thu Jun 24 15:44:47 CEST 2021


Hi Stefano,

my guess is that you're expecting data recycling to apply but your
data frame is only one row long... therefore you can't insert a 2-row
vector into a 1-row vector. Recycling won't help.

You should specify the number of rows that will be required in your
data frame using (e.g) rep().

(here I use 10 rows as an example)

mydf <- data.frame(data_POSIX=rep(as.POSIXct(NA), 10),
value=as.numeric(NA)) 

Olivier.

On Thu, 24 Jun 2021 13:34:31
+0000 Stefano Sofia <stefano.sofia using regione.marche.it> wrote:

> Dear R users,
> I know that this question is silly (I am not a R newby) but I already
> wasted quite a lot of energies trying to fill in an empty data frame
> (with "POSIXct" "POSIXt" data type).
> 
> Suppose I create
> mydf <- data.frame(data_POSIX=as.POSIXct(NA), value=as.numeric(NA))
> day1 <- as.POSIXct("2018-02-01-00-00", format="%Y-%m-%d-%H-%M",
> tz="Etc/GMT-1") day2 <- as.POSIXct("2018-02-02-00-00",
> format="%Y-%m-%d-%H-%M", tz="Etc/GMT-1")
> 
> then
> mydf$data_POSIX <- c(day1, day2)
> 
> does not work, it gives me:
> "Error in `$<-.data.frame`(`*tmp*`, data_POSIX, value = c(1517439600,
> 1517612400 : replacement has 2 rows, data has 1"
> 
> There are few basic concepts that I am missing.
> Why c(day1, day2) is not a vector?
> Why I am not able to populate my data frame?
> 
> Could somebody please give me the right hints?
> Thank you for your precious help
> Stefano
> 
> 
>          (oo)
> --oOO--( )--OOo--------------------------------------
> Stefano Sofia PhD
> Civil Protection - Marche Region - Italy
> Meteo Section
> Snow Section
> Via del Colle Ameno 5
> 60126 Torrette di Ancona, Ancona (AN)
> Uff: +39 071 806 7743
> E-mail: stefano.sofia using regione.marche.it
> ---Oo---------oO----------------------------------------
> 
> ________________________________
> 
> AVVISO IMPORTANTE: Questo messaggio di posta elettronica può
> contenere informazioni confidenziali, pertanto è destinato solo a
> persone autorizzate alla ricezione. I messaggi di posta elettronica
> per i client di Regione Marche possono contenere informazioni
> confidenziali e con privilegi legali. Se non si è il destinatario
> specificato, non leggere, copiare, inoltrare o archiviare questo
> messaggio. Se si è ricevuto questo messaggio per errore, inoltrarlo
> al mittente ed eliminarlo completamente dal sistema del proprio
> computer. Ai sensi dell’art. 6 della DGR n. 1394/2008 si segnala che,
> in caso di necessità ed urgenza, la risposta al presente messaggio di
> posta elettronica può essere visionata da persone estranee al
> destinatario. IMPORTANT NOTICE: This e-mail message is intended to be
> received only by persons entitled to receive the confidential
> information it may contain. E-mail messages to clients of Regione
> Marche may contain information that is confidential and legally
> privileged. Please do not read, copy, forward, or store this message
> unless you are an intended recipient of it. If you have received this
> message in error, please forward it to the sender and delete it
> completely from your computer system.
> 
> --
> Questo messaggio  stato analizzato da Libraesva ESG ed  risultato non
> infetto. This message was scanned by Libraesva ESG and is believed to
> be clean.
> 
> 
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> 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.


-- 
  Olivier Crouzet, PhD
  http://olivier.ghostinthemachine.space
  /Maître de Conférences/
  @LLING - Laboratoire de Linguistique de Nantes
    UMR6310 CNRS / Université de Nantes



More information about the R-help mailing list