Я относительно новичок - я sh в программировании в целом (студент по бизнес-аналитике стал аналитиком данных), и я тестирую сценарий python для итерации по строкам CSV и создания запроса шифрования для каждой загружаемой строки. в neo4j -
import pandas as pd
from neo4j import GraphDatabase
pd.set_option('display.max_colwidth', -1)
# neo4j credentials
uri= "bolt://localhost:7687"
userName= "neo4j"
password= "password"
df = pd.read_csv('C://Users/ABC/Documents/Test/Test/lineage_stored_procedure_dedup.csv',
sep=',', index_col=None, header=0,usecols=[0,1,2,3,4,5])
df.columns.str.replace(' ', '')
graphDB_Driver = GraphDatabase.driver(uri, auth=(userName, password))
with graphDB_Driver.session() as graphDB_Session:
for row in df.iterrows():
cq = 'merge (p:Program{programName:"'+df['Parent_Procedure']+'"}) set p.type = "'+df['Parent_Object_Type']+'"'
res = graphDB_Session.run(cq)
graphDB_Driver.close()
Я получаю следующую ошибку -
Traceback (most recent call last):
File "<ipython-input-91-01ba397763e3>", line 1, in <module>
runfile('C:/Users/ABC/Documents/Test/Test/StoredProcLoadScript.py', wdir='C:/Users/ABC/Documents/Test/Test')
File "C:\Users\ABC\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 827, in runfile
execfile(filename, namespace)
File "C:\Users\ABC\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 110, in execfile
exec(compile(f.read(), filename, 'exec'), namespace)
File "C:/Users/ABC/Documents/Test/Test/StoredProcLoadScript.py", line 35, in <module>
res = graphDB_Session.run(cq)
File "C:\Users\ABC\Anaconda3\lib\site-packages\neo4j\__init__.py", line 429, in run
if not statement:
File "C:\Users\ABC\Anaconda3\lib\site-packages\pandas\core\generic.py", line 1555, in __nonzero__
self.__class__.__name__
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().
Я понимаю, что ошибка означает, что я не использовал правильные побитовые операторы согласно pandas документации. Но я не понимаю, где мне вообще нужно было использовать его в коде для начала? Цени любую помощь. Спасибо.