Как передать список в запрос шифра Py2neo - PullRequest
0 голосов
/ 07 февраля 2019

Я пытаюсь передать список значений в запрос Py2neo Cypher и использовать этот список в качестве параметра запроса.У меня сейчас какие-то трудности.Я пытаюсь передать в запрос список компаний и вернуть результаты запроса в DataFrame Pandas.

Код, который я использую в настоящее время, показан ниже.Список компаний здесь сокращен в демонстрационных целях и фактически насчитывает сотни компаний.

my_list = ['Company_1','Company_2','Company_3','Company_4']

my_query = '''(c1:Company)-[r:HAS_SUPPLIER]-(c2:Company) where 
                c1.name in ['{mylist}'] Return c1.name, r.rank, c2.name'''

company_df = graph.cypher.execute(my_query)
company_df = pd.DataFrame(company_df .records, columns=company_df.columns)

Полученное сообщение об ошибке выглядит следующим образом:

AttributeError: module 'py2neo.cypher.error.statement' has no attribute 'SyntaxError'

Любая помощь, котораякто-то может предоставить, будет принята с благодарностью.

1 Ответ

0 голосов
/ 07 февраля 2019

Можете ли вы попробовать это:

params = {}
params['mylist'] = ['Company_1','Company_2','Company_3','Company_4']

my_query = '(c1:Company)-[r:HAS_SUPPLIER]-(c2:Company) where 
                c1.name in $mylist Return c1.name, r.rank, c2.name'

company_df = graph.cypher.execute(my_query, params)
...