-
Notifications
You must be signed in to change notification settings - Fork 0
/
codebook.R
77 lines (67 loc) · 2.43 KB
/
codebook.R
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
library(stringr)
getDescription <- function(name){
time.variable <- grepl("^t",name)
mean.variable <- grepl("\\-mean()",name)
xyz.variable <- str_extract(name,"\\-[XYZ]")
body.variable <- grepl("Body",name)
acc.variable <- grepl("Acc",name)
jerk.variable <- grepl('Jerk',name)
description <- "The average of"
if (mean.variable){
description <- paste(description, "mean measurements of")
} else{
description <- paste(description, "standard deviation measurements of")
}
if(is.na(xyz.variable)){
description <- paste(description, "magnitude of")
}
if (body.variable){
description <- paste(description, "body")
} else{
description <- paste(description, "gravitational")
}
if (acc.variable){
description <- paste(description, "linear acceleration")
} else{
description <- paste(description, "angular acceleration")
}
if (jerk.variable){
description <- paste(description, "'s jerk")
}
if (time.variable){
description <- paste(description, "time domain signals")
}else{
description <- paste(description, "frequency domain signals")
}
if (!is.na(xyz.variable)){
description <- paste(description, "obtained in",substring(xyz.variable,2,2),"direction")
}
description
}
writeAttribute <- function(v,name){
write(paste("####",name),'CodeBook.md',append = T)
write("",'CodeBook.md',append = T)
if (name == 'Subject'){
write("Type: Integer, Range: [1,30]",'CodeBook.md',append = T)
write("",'CodeBook.md',append = T)
write("Id of the involved subject",'CodeBook.md',append = T)
}
else if(name =='Activity'){
write("Type: String",'CodeBook.md',append = T)
write("",'CodeBook.md',append = T)
write("Values: LAYING, SITTING, STANDING, WALKING, WALKING_DOWNSTAIRS, WALKING_UPSTAIRS",'CodeBook.md',append = T)
}
else
{
write(paste("Type: Numeric," , "Range: [-1,1]") ,'CodeBook.md',append = T)
write("",'CodeBook.md',append = T)
write(sprintf("%30s",getDescription(name)),'CodeBook.md',append = T)
}
write("",'CodeBook.md',append = T)
}
if (file.exists('CodeBook.md')){
file.remove('CodeBook.md')
}
for(i in 1:dim(outputData)[2]){
writeAttribute(outputData[,i],colnames(outputData)[i])
}