Skip to content

Commit c0b3362

Browse files
committed
Run_Analysis.R
1 parent 0d20dfd commit c0b3362

File tree

1 file changed

+71
-0
lines changed

1 file changed

+71
-0
lines changed

Diff for: Run_analysis.R

+71
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
2+
3+
setwd(""C:/Users/SUSM/Documents/assignmentdata/UCI HAR Dataset")
4+
5+
list.files("./test")
6+
7+
###step1: Merge the Test and Train data sets to create merged data sets of Test and Train
8+
9+
TestX<-read.table("./test/X_test.txt")
10+
TestY<-read.table("./test/y_test.txt")
11+
Testsubject<-read.table("./test/subject_test.txt")
12+
13+
list.files("./train")
14+
15+
TrainX<-read.table("./Train/X_train.txt")
16+
TrainY<-read.table("./Train/y_train.txt")
17+
Trainsubject<-read.table("./Train/subject_train.txt")
18+
19+
mergedX<-rbind(TestX,TrainX) ## rowbind Test and Training sets to create mergedX dataset
20+
mergedY<-rbind(TestY,TrainY)
21+
mergedsubject<-rbind(Testsubject,Trainsubject)
22+
23+
## step2: Extract only the measurements of only mean and standard deviation
24+
25+
26+
features<-read.table("features.txt") ## read features.txt file into features data frame
27+
28+
## using grep(),extract variables ending with mean() and std() from features dataset
29+
## and assign to features_meanstd subset
30+
features_meanstd<-features[grep("mean\\>|std",features$V2),]
31+
32+
33+
## step 3: and label the data with descriptive variable names
34+
features_meanstd[,2]<-sub("tB","timeB",features_meanstd[,2])
35+
features_meanstd[,2]<-sub("tG","timeG",features_meanstd[,2])
36+
37+
features_meanstd[,2]<-sub("f","Freq",features_meanstd[,2])
38+
## find and replace illegal characters with '.' in the variable names of dataset
39+
features_meanstd[,2]<-gsub("[()]","",features_meanstd[,2])
40+
features_meanstd[,2]<-gsub("-",".",features_meanstd[,2])
41+
42+
43+
mergedXmeanstd<-mergedX[,c(features_meanstd[,1])]
44+
45+
names(mergedXmeanstd)<-c(features_meanstd[,2]) ## rename column names with descriptive variable names assigned in features_meanstd
46+
47+
## step 4: descriptive activity names to name the activities in the data
48+
49+
names(mergedY)<-c("Activity") ## rename column name to Activity in mergedY dataset
50+
names(mergedsubject)<-c("Subject") ## rename column name to Subject in mergedsubject dataset
51+
52+
activity_labels<-read.table("activity_labels.txt")
53+
activitylabels<-activity_labels[,2]
54+
mergedY$Activity<-as.factor(mergedY$Activity)
55+
mergedY$Activity<-factor(mergedY$Activity,labels=activitylabels)
56+
57+
## cbind X data (containing mean & std),Y and subject datasets to create one mergeddata data set
58+
mergeddata<-cbind(mergedsubject,mergedY,mergedXmeanstd)
59+
60+
## step5: create tidy data set from the one data set created above
61+
62+
library(reshape2)
63+
64+
65+
melteddata<-melt(mergeddata, id.vars=c("Subject","Activity"),measure.vars=c(features_meanstd[,2]))
66+
67+
casteddata<-dcast(melteddata,Subject+Activity ~ variable, mean)
68+
69+
## write the casteddata into tidydata.txt file using write.table
70+
71+
write.table(castdata,file="tidydata.txt", sep="\t", row.name=FALSE)

0 commit comments

Comments
 (0)