Objects - variables
use c() to create a collection of data and assign them to a variable.
metallicaNames<-c("Lars", "James", "Kirk", "Rob")
Dataframes
A dataframe is similar to a spreadsheet, an object that containing several objects. To combine different objects.
metallica<-data.frame(Name=metallicaNames, Age=metallicaAges)
To add column to a dataframe
metallica$chidAge<-c(12, 12, 4, 6)
To see the column names of a dataframe
names(metallica)
Create a list: a list of separate objects
> metallica2<-list(metallicaNames, metallicaAges)
> metallica2
[[1]]
[1] "Lars" "James" "Kirk" "Rob"
[[2]]
[1] 47 47 48 46
> metallica2[1]
[[1]]
[1] "Lars" "James" "Kirk" "Rob"
> metallica2[2]
[[1]]
[1] 47 47 48 46
Dates
To create date type objects
birth_data<-as.Date(c("1977-07-03", "1969-05-24", "1973-06-21", "1970-07-16", "1949-10-10", "1983-11-05", "1987-10-08", "1989-09-16", "1973-05-20", "1984-11-12"))
Coding variable
It is used to indicate different groups for participants, such as "Tablet" and "Phone" group. First we create collection of different numbers to indicate the different group, and then assign them to corresponding factors using factor().
> job<-c(rep(1, 5), rep(2, 5))
> job
[1] 1 1 1 1 1 2 2 2 2 2
> job<-factor(job, levels=c(1:2), labels=c("Lecturer", "Student"))
> job
[1] Lecturer Lecturer Lecturer Lecturer Lecturer Student Student Student
[9] Student Student
Levels: Lecturer Student
Alternative to create coding variables
job<-gl(2, 5, labels=c("Lecturer", "Student"))
Importing data
csv -> dataframe
lecturerData2 = read.csv("Lecturer Data.dat", header=TRUE)
dat or txt -> dataframe
lecturerData2<-read.delim("Lecturer Data.dat", header=TRUE)
to navigate to different directory we could use setwd("xx/xx")
Manipulating data
select a part of data
newDataf <- oldDataf[rows, frames]
lecturerPersonality <- lecturerData[, c("friends", "alcohol", "neurotic")]
lecturerOnly <- lecturerData[job=="Lecturer",]
alcoholPersonality <- lecturerData[alcohol > 10, c("friends", "alcohol", "neurotic")]
stack the dataframe (wide -> long)
select columns to be stacked on top of each other
satisfactionStacked<-stack(satisfactionData, select=c("Satisfaction_Base", "Satisfaction_6_Months", "Satisfaction_12_Months", "Satisfaction_18_Months"))