|
| 1 | +library(rstudioapi) |
| 2 | +library(svDialogs) |
| 3 | +library(stringr) |
| 4 | +library(stringi) |
| 5 | +setwd(selectDirectory(caption="Select 0000 QNT folder")) |
| 6 | +NumberofSamples<-as.numeric(dlgInput("Enter number of samples")$res) |
| 7 | +NumberofElements<-as.numeric(dlgInput("Enter number of Elements")$res) |
| 8 | +StoreKraws<-data.frame(matrix(NA,NumberofSamples,NumberofElements)) |
| 9 | +StorePositions<-data.frame(matrix(NA,NumberofSamples,4)) |
| 10 | +StoreComment<-data.frame(matrix(NA,NumberofSamples,2)) |
| 11 | +for(i in 1:NumberofSamples){ |
| 12 | + QuantResult<-read.table(paste(getwd(),"/Pos_",stri_pad(i,4,pad="0"),"/1.wt",sep=""),header=FALSE,sep="",fill=TRUE) |
| 13 | + FolderName<-QuantResult[which(QuantResult=='Project',arr.ind=T)[1,1],which(QuantResult=='Project',arr.ind=T)[1,2]+2] |
| 14 | + elementlabels<-"El No." |
| 15 | + for(ii in 1:NumberofElements){ |
| 16 | + El1<-which(QuantResult[,1]==ii) |
| 17 | + elementlabels<-c(elementlabels,(QuantResult[El1,2])) |
| 18 | + rowdecimals<-str_extract(QuantResult[El1,],".*[0-9]\\...[0-9]") |
| 19 | + rowdecimals<-rowdecimals[!is.na(rowdecimals)] |
| 20 | + ExtractedKraw<-rowdecimals[length(rowdecimals)] |
| 21 | + StoreKraws[i,ii]<-ExtractedKraw |
| 22 | + } |
| 23 | + StorePositions[i,1]<-QuantResult[which(QuantResult=='X=',arr.ind=T)[1,1],which(QuantResult=='X=',arr.ind=T)[1,2]+1] |
| 24 | + StorePositions[i,2]<-QuantResult[which(QuantResult=='Y=',arr.ind=T)[1,1],which(QuantResult=='Y=',arr.ind=T)[1,2]+1] |
| 25 | + StorePositions[i,3]<-QuantResult[which(QuantResult=='Z=',arr.ind=T)[1,1],which(QuantResult=='Z=',arr.ind=T)[1,2]+1] |
| 26 | + xmove<-as.numeric(StorePositions[1,1])-as.numeric(StorePositions[i,1]) |
| 27 | + ymove<-as.numeric(StorePositions[1,2])-as.numeric(StorePositions[i,2]) |
| 28 | + StorePositions[i,4]<-sqrt((xmove^2)+(ymove^2)) |
| 29 | + StoreComment[i,1]<-str_split_i(str_replace_all(toString(QuantResult[which(QuantResult=='Comment',arr.ind=T)[1],]),"([,])",""),"Comment",1) |
| 30 | + StoreComment[i,2]<-str_replace_all(str_split_i(str_replace_all(toString(QuantResult[which(QuantResult=='Comment',arr.ind=T)[1],]),"([,])",""),"Comment",2),"([:])","") |
| 31 | +} |
| 32 | +colnames(StoreKraws)<-elementlabels[2:length(elementlabels)] |
| 33 | +colnames(StorePositions)<-c("X","Y","Z","Rel Dist") |
| 34 | +colnames(StoreComment)<-c("Position No.","Comment") |
| 35 | +#write.csv(StoreKraws,file=file.path(getwd(),paste(FolderName,"RStudio_Extract_Kraws_Points.csv",sep="_"))) |
| 36 | +write.csv(cbind(StoreKraws,StorePositions,StoreComment),file=file.path(getwd(),paste(FolderName,"RStudio_Extract_Kraws_Points_RelDist_Comment.csv",sep="_"))) |
| 37 | + |
0 commit comments