You can arrange them accordingly in a factor variable, and then convert them to a numerical value like this:
Q1 <- factor(Q1, levels=c("Disagree","Neither","Agree","Strongly Agree")) as.numeric(Q1)-2
You subtract 2 because the lowest level coefficient is stored as 1, and you want the lower level to be -1.
Alternatively, a single line that returns a numeric variable instead of numbers:
factor(Q1, levels=c("Disagree","Neither","Agree","Strongly Agree"), labels=c(-1,0,1,2))
Jota
source share