Como usar uma variável de sequência para selecionar uma coluna do quadro de dados usando a notação $ [duplicada]

Esta pergunta já tem uma resposta aqui:

Selecione dinamicamente as colunas do quadro de dados usando $ e um vetor de nomes de colunas 8 respostas

Da leitura que tenho feito com R, posso selecionar uma coluna em um quadro de dados por um destes dois métodos: quadro [, coluna] ou quadro $ coluna. No entanto, quando eu tenho uma string como variável, ela funciona apenas na primeira. Em outras palavras, considere o seguinte:

Tenho um quadro de dados, tmp, um subconjunto de um quadro de dados maior de respostas a perguntas. V1 é o ID do respondente, Q5.3 é a resposta, 1 ou 0:

            V1 Q5.3
2 R_bdyKkzWcvBxDFTT    1
3 R_41wnKUQcM8mUW2x    0
4 R_2ogeykkgbH2e4RL    1
5 R_8D4jzMBfYO0M0ux    1
6 R_3KPgP2pxWROnip7    1

str(tmp)

'data.frame':   5 obs. of  2 variables:
     $ V1  : Factor w/ 364 levels "R_0039orNoOoWaDQx",..: 256 116 70 201 95
     $ Q5.3: num  1 0 1 1 1

gora, eu defino uma variável x, que contém a sequência do nome de uma das coluna

x<-"Q5.3"

tmp [, x] retorna o que eu acho que deveria retornar:

tmp[,x]

[1] 1 0 1 1 1

tmp $ "Q5.3" retorna o que eu acho que deveria retornar:

tmp$"Q5.3"

[1] 1 0 1 1 1

tmp $ x, no entanto, retorna

tmp$x

NULL

Como posso dizer ao R para interpretar tmp $ x como tmp $ "Q5.3"

questionAnswers(1)

yourAnswerToTheQuestion