[R] data frame: adding columns from data and file title
Rui Barradas
ruipbarradas at sapo.pt
Wed Nov 28 12:59:32 CET 2012
Hello,
First of all, the best way of posting data examples is ?dput. Anyway,
try the following.
dat <- read.table(text="
Date_ Time_ Speed Course Type_ Distance
30/03/2012 11:15:05 108 121 -2 0
30/03/2012 11:15:06 0 79 0 0
30/03/2012 11:15:07 0 76 0 1
30/03/2012 11:15:08 0 86 0 2
30/03/2012 11:15:09 0 77 0 3
", header = TRUE, stringsAsFactors = FALSE)
dat
str(dat)
filename <- "G7_pig328_unit328_Site141_30MAR2012_RNo4_SitNo1.csv"
dat$cDistance <- cumsum(dat$Distance)
x <- unlist(strsplit(filename, "_"))[1:2]
x <- as.integer(sub("[[:alpha:]]+", "", x))
dat$Group <- x[1]
dat$BIRD <- x[2]
dat
Hope this helps,
Rui Barradas
Em 28-11-2012 09:33, jgui001 escreveu:
> Data processing”
>
> I have a large number of csv files from animal tracks that look like this:
>
> Date_ Time_ Speed
> Course Type_ Distance
> 30/03/2012 11:15:05 108
> 121 -2
> 0
> 30/03/2012 11:15:06 0
> 79 0 0
> 30/03/2012 11:15:07 0
> 76 0 1
> 30/03/2012 11:15:08 0
> 86 0 2
> 30/03/2012 11:15:09 0
> 77 0 3
>
> Each file has a name like this
> “G7_pig328_unit328_Site141_30MAR2012_RNo4_SitNo1.csv”
>
> To automate the processing I would like to
> 1. Add on various columns calculated from within the data frame e.g.
> cumulative distance traveled (cDistance) by Summing the distance column from
> [1 :n] for each row
> 2 Add columns derived from the file name so when I merge all the files
> together I know what observation corresponds to which group and bird etc.
> For example G7 stands for group 7, pig328 is pigeon328:
>
> The file look the same with but with these columns (plus others) added
>
> cDistance Group BIRD
> 0 7 328
> 0 7 328
> 1 7 328
> 3 7 328
> 6 7 328
>
> I was thinking a function like this for cDistance (if I can get it to work)
>
> cdistamce <-funtion(x){
> i = 1
> j=nrow(temp1.df)
> while(i<=j,ifelse(i=1,"Distance[i]",Sum("Distance"))
> i=i+1
> }
>
> But hit a brick wall and I have no idea about adding columns from the name.
> Am I on the right track with the first one and any ideas, coz I can't brain
> today I have the dumb!?
>
> Cheers
> Josh
>
>
>
> --
> View this message in context: http://r.789695.n4.nabble.com/data-frame-adding-columns-from-data-and-file-title-tp4651099.html
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> 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.
More information about the R-help
mailing list