Joris DeWolf
2003-May-08 11:56 UTC
[R] strange behaviour of certain fields in data frame after rbind
Can anybody explain me what is going wrong with the rbind command or how I could avoid the problem? I have a script with loops which time has a dataframe as output (called T2sbdata). After each loop I would like to append that dataframe to the results I obtained from the previous loops (called T2sbdataALL) and use for that purpose rbind. Below a part of the loop and the result I get. The rbind command does it job as I would expect, but cannot append the column PTGEvent properly. I use R Version 1.6.2 under Linux. Thanks Joris print("how original data look like") print(T2sbdataALL[1:8]) print("how data to be appended look like") print(T2sbdata[1:8]) T2sbdataALL <- rbind(T2sbdataALL,T2sbdata) print("How all data look after rbind") print(T2sbdataALL[1:8]) [1] "how original data look like" IDSSB IDSeed CDnr PTGEvent ExpNr IDExp WPSNumber TypeExp 35 12102 150008 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 36 12103 150328 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 37 12104 150307 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 38 12105 150327 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 39 12106 150304 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 40 12107 149693 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 41 12108 150303 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 42 12109 149698 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 43 12110 150320 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 44 12111 150301 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 45 12112 150034 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation [1] "how data to be appended look like" IDSSB IDSeed CDnr PTGEvent ExpNr IDExp WPSNumber TypeExp 46 12113 150335 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b Confirmation 47 12114 150032 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b Confirmation 48 12115 150293 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b Confirmation 49 12116 150599 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b Confirmation 50 12117 150332 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b Confirmation 51 12118 150287 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b Confirmation 52 12119 150595 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b Confirmation 53 12120 150038 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b Confirmation 54 12121 150286 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b Confirmation 55 12122 150333 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b Confirmation [1] "How all data look after rbind" IDSSB IDSeed CDnr PTGEvent ExpNr IDExp WPSNumber TypeExp 35 12102 150008 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 36 12103 150328 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 37 12104 150307 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 38 12105 150327 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 39 12106 150304 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 40 12107 149693 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 41 12108 150303 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 42 12109 149698 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 43 12110 150320 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 44 12111 150301 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 45 12112 150034 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b Confirmation 46 12113 150335 CD3629 <NA> E0.000.003.205 3116 YD03_17b Confirmation 47 12114 150032 CD3629 <NA> E0.000.003.205 3116 YD03_17b Confirmation 48 12115 150293 CD3629 <NA> E0.000.003.205 3116 YD03_17b Confirmation 49 12116 150599 CD3629 <NA> E0.000.003.205 3116 YD03_17b Confirmation 50 12117 150332 CD3629 <NA> E0.000.003.205 3116 YD03_17b Confirmation 51 12118 150287 CD3629 <NA> E0.000.003.205 3116 YD03_17b Confirmation 52 12119 150595 CD3629 <NA> E0.000.003.205 3116 YD03_17b Confirmation 53 12120 150038 CD3629 <NA> E0.000.003.205 3116 YD03_17b Confirmation 54 12121 150286 CD3629 <NA> E0.000.003.205 3116 YD03_17b Confirmation 55 12122 150333 CD3629 <NA> E0.000.003.205 3116 YD03_17b Confirmation -- ====================================================================== Joris De Wolf CropDesign N.V. Plant Evaluation Group Technologiepark 3 B-9052 Zwijnaarde Belgium Tel. : +32 9 242 91 55 Fax : +32 9 241 91 73 ====================================================================== The information contained in this email is confidential and may ... {{dropped}}
Prof Brian Ripley
2003-May-08 12:09 UTC
[R] strange behaviour of certain fields in data frame after rbind
>From the NEWS for 1.7.0:o The data.frame method for rbind() was - converting character columns to factors, - converting ordered factor columns to unordered factors, - failing to append correctly a factor to a character column and vice versa. and my guess is that is what you are seeing. But we can't tell the classes of your columns from the printout. It would have been helpful to ask yourself (and tell us) what is special about `certain fields'. I believe this works properly in 1.6.2 if the fields are either factor or character and protected by I() (and hence of class "AsIs"). On Thu, 8 May 2003, Joris DeWolf wrote:> Can anybody explain me what is going wrong with the rbind command or how > I could avoid the problem? > I have a script with loops which time has a dataframe as output (called > T2sbdata). After each loop I would like to append that dataframe to the > results I obtained from the previous loops (called T2sbdataALL) and use > for that purpose rbind. > > Below a part of the loop and the result I get. The rbind command does it > job as I would expect, but cannot append the column PTGEvent properly. > > I use R Version 1.6.2 under Linux. > > Thanks > > Joris > > print("how original data look like") > print(T2sbdataALL[1:8]) > print("how data to be appended look like") > print(T2sbdata[1:8]) > T2sbdataALL <- rbind(T2sbdataALL,T2sbdata) > print("How all data look after rbind") > print(T2sbdataALL[1:8]) > > > > > [1] "how original data look like" > IDSSB IDSeed CDnr PTGEvent ExpNr IDExp WPSNumber > TypeExp > 35 12102 150008 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 36 12103 150328 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 37 12104 150307 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 38 12105 150327 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 39 12106 150304 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 40 12107 149693 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 41 12108 150303 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 42 12109 149698 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 43 12110 150320 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 44 12111 150301 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 45 12112 150034 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > [1] "how data to be appended look like" > IDSSB IDSeed CDnr PTGEvent ExpNr IDExp WPSNumber > TypeExp > 46 12113 150335 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b > Confirmation > 47 12114 150032 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b > Confirmation > 48 12115 150293 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b > Confirmation > 49 12116 150599 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b > Confirmation > 50 12117 150332 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b > Confirmation > 51 12118 150287 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b > Confirmation > 52 12119 150595 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b > Confirmation > 53 12120 150038 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b > Confirmation > 54 12121 150286 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b > Confirmation > 55 12122 150333 CD3629 OS0934-09A E0.000.003.205 3116 YD03_17b > Confirmation > [1] "How all data look after rbind" > IDSSB IDSeed CDnr PTGEvent ExpNr IDExp WPSNumber > TypeExp > 35 12102 150008 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 36 12103 150328 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 37 12104 150307 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 38 12105 150327 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 39 12106 150304 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 40 12107 149693 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 41 12108 150303 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 42 12109 149698 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 43 12110 150320 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 44 12111 150301 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 45 12112 150034 CD3629 OS0934-07A E0.000.003.205 3116 YD03_17b > Confirmation > 46 12113 150335 CD3629 <NA> E0.000.003.205 3116 YD03_17b > Confirmation > 47 12114 150032 CD3629 <NA> E0.000.003.205 3116 YD03_17b > Confirmation > 48 12115 150293 CD3629 <NA> E0.000.003.205 3116 YD03_17b > Confirmation > 49 12116 150599 CD3629 <NA> E0.000.003.205 3116 YD03_17b > Confirmation > 50 12117 150332 CD3629 <NA> E0.000.003.205 3116 YD03_17b > Confirmation > 51 12118 150287 CD3629 <NA> E0.000.003.205 3116 YD03_17b > Confirmation > 52 12119 150595 CD3629 <NA> E0.000.003.205 3116 YD03_17b > Confirmation > 53 12120 150038 CD3629 <NA> E0.000.003.205 3116 YD03_17b > Confirmation > 54 12121 150286 CD3629 <NA> E0.000.003.205 3116 YD03_17b > Confirmation > 55 12122 150333 CD3629 <NA> E0.000.003.205 3116 YD03_17b > Confirmation > >-- Brian D. Ripley, ripley at stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595