Repository navigation
Expand file tree
/
Copy pathrun_Analysis.R
More file actions
74 lines (50 loc) · 2.11 KB
/
Copy pathrun_Analysis.R
File metadata and controls
74 lines (50 loc) · 2.11 KB
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
run_Analysis <- function() {
#for detailed comments please refer to the readme.md
#STEP 1
#Column Names
row <- read.table("features.txt")
row <- as.vector(row[,2])
#Test Data
xtest <- read.table("X_test.txt")
colnames(xtest) <- (row)
ytest <- read.table("y_test.txt")
colnames (ytest) <- ("Activities")
subjecttest <- read.table("subject_test.txt")
colnames (subjecttest) <- ("Subject")
test <- cbind(subjecttest, ytest)
test <- cbind(test, xtest)
#Train Data
xtrain <- read.table("X_train.txt")
colnames(xtrain) <- (row)
ytrain <- read.table("y_train.txt")
colnames (ytrain) <- ("Activities")
subjecttrain <- read.table("subject_train.txt")
colnames (subjecttrain) <- ("Subject")
train <- cbind(subjecttrain, ytrain)
train <- cbind(train, xtrain)
#Complete Data
data <- rbind(train,test)
#STEP 2
#Identify Columns
selection <- grep("std|mean", names(data))
#Subset Data
data <- data[,c(1, 2, selection)]
#STEP 3
#Column Names
activities <- read.table("activity_labels.txt")
#Merge
data <- merge(activities, data, by.x="V1", by.y="Activities", all=TRUE)
#CleanUp
data <- data[,-1]
names(data) <- sub("V2","Activities", names(data),)
#STEP 4
names(data) <- gsub("BodyBody","Body",(names(data)))
names(data) <- gsub("^t","time_",(names(data)))
names(data) <- gsub("^f","freq_",(names(data)))
#STEP 5
# Reshape
data_melt <- melt(data,id=c("Activities","Subject"), measure=c(names(data[,-(1:2)])))
data_final <- dcast(data_melt, Activities + Subject ~ variable, mean)
#Output
write.table(data_final, file="data_final.txt", row.name=FALSE)
}