Dear All,
I have created code to analyse the data of one file and I have three results from this analysis of data.
I want to now create lope to use same code to analyse data from multiple files and store the results of multiple files in one variable. I would like to differentiate results of each file based on file name.
Could someone help me with this.
My present code -
> library(stringr)
> library(readr)
> myFile = readLines(file.choose())
> myResult = list()
> #Find the position of the variables that are between []
> #We add the last line number as a position as well
> vars = c(which(str_detect(myFile, "^\\[.*\\]\\s*$") == T), length(myFile))
> #get the content for each variable
> for(i in 1:(length(vars)-1)){
+ myData = myFile[vars[i]:(vars[i+1]-1)]
+ #remove lines that are comments or blank
+
+ #if content is a list of variables, create them as a list
+ if(str_detect(myData[2],"=")){
+ content = str_split(myData[-1],"=")
+ result = lapply(lapply(content,"[",2), parse_guess)
+ names(result) = sapply(content,"[",1)
+ } else{
+ #if the content just a vector of data, extract it
+ result = parse_guess(myData[-1])
+ }
+ #create the variable as a list item and assign the content
+ myResult[[str_remove_all(myData[1], "\\[\\]")]]=result
+ }
> myFile = myResult$`[specdata0]`
> n=round((myResult$`[specchannel0]`$fRPMmean*4/myResult$`[specchannel0]`$dF))
#number of data points to be considered from complete set
> myFile=myFile[1:n] #required number of data for analysis
> myFile = as.numeric(myFile)
> l=round(n/4) # number of data per group
> #defining each group
> myFile1=myFile[1:l]
> myFile2=myFile[(l+1):(2*l)]
> myFile3=myFile[(2*l+1):(3*l)]
> myFile4=myFile[(3*l+1):n]
>
> #all predictor calulations
> mean1 = mean(myFile1)
> mean2 = mean(myFile2)
> mean3 = mean(myFile3)
> mean4 = mean(myFile4)
> Mean <- data.frame(mean1,mean2,mean3,mean4)
>
> Var1 = var(myFile1)
> Var2 = var(myFile2)
> Var3 = var(myFile3)
> Var4 = var(myFile4)
> Var <- data.frame(Var1,Var2,Var3,Var4)
>
> StandDiv1 = sd(myFile1)
> StandDiv2 = sd(myFile2)
> StandDiv3 = sd(myFile3)
> StandDiv4 = sd(myFile4)
> StandDiv <- data.frame(StandDiv1,StandDiv2,StandDiv3,StandDiv4)
>
> R <- data.frame(Mean,Var,StandDiv) #This has all results
Thank You