Использование пользовательских переменных ввода в PandaSQL
Я пытаюсь использовать pandaSQL на имеющемся у меня фрейме данных, и мне интересно, есть ли способ использовать переменные или есть другой способ сделать это. Я пытаюсь установить пользовательский ввод как переменную и затем попытаться использовать это в операторе SQL. Я хочу отобразить каждый экземпляр этой формы при вводе. Я пытаюсь что-то вроде:
variable1 = input("Enter shape here: ")
print pysqldf("SELECT imageNum FROM df WHERE shape1 = variable1 ")
но пока не повезло. Все остальное работает нормально, у меня просто возникают проблемы при вводе переменных. Возможно ли это в pandaSQL, и если нет, какие обходные пути можно использовать?
1 ответ
Вам нужно будет пройти WHERE
предложение в запросе SQL аргумент в кавычках, то есть:
ВЫБЕРИТЕ imageNum ОТ df WHERE shape1 = "квадрат".
Поэтому вам нужно будет передать строку, содержащую кавычки. Попробуйте следующее:
variable1 = input ("Введите форму здесь:")
variable1str = "\" "+ variable1 +" \ ""
print pysqldf ("ВЫБЕРИТЕ imageNum ОТ df WHERE shape1 = variable1str ")
Таким образом, если ваш вклад, скажем, "square"
:
переменная печати1
`> квадратпечать variable1str
'> "квадрат"