CREATE INDEX ON :Fingerprint(Code);
CREATE INDEX ON :Fingerprint(Size);
USING PERIODIC COMMIT LOAD CSV WITH HEADERS FROM 'mypath_to_file.csv'
as csvLine FIELDTERMINATOR '\t'
MATCH (m:Molecule {NSC: toInt(csvLine.NSC)})
MERGE (f:Fingerprint {Code: toInt(csvLine.Identifier), Size: toInt(csvLine.Distance)})
CREATE (m)-[:hasBit {Type: 'SCFP6', Atoms: csvLine.Atoms}]-> (f);
NSC Identifier Distance Atoms Substructure
128 1 0 1 [*]C(=[*])[*]
128 0 0 2 [*]C
128 13 0 3 [*]=O
128 9 0 4 [*]N([*])[*]
128 3 0 5 [*][c](:[*]):[*]
128 17 0 12 [*]S[*]
128 1256995004 2 1 2 3 4 [*]N([*])C(=O)C
128 136627117 2 1 2 [*]C(=[*])C
128 1311071855 2 1 3 [*]C(=O)[*]
关于CSV数据上传,从V2.1.7到2.2.0-M03有什么变化吗?这是已知的虫子吗?
如果您需要示例文件和脚本的添加信息,请不要犹豫。
你能试着做:
LOAD CSV WITH HEADERS FROM 'mypath_to_file.csv'
as csvLine FIELDTERMINATOR '\t'
RETURN count(*);
和
LOAD CSV WITH HEADERS FROM 'mypath_to_file.csv'
as csvLine FIELDTERMINATOR '\t'
RETURN csvLine
SKIP 25900;
看看数据或解析是否有问题?也许在回滚事务的解析过程中发生了异常?
MERGE (f:Fingerprint {Code: toInt(csvLine.Identifier)})
ON CREATE SET f.Size=toInt(csvLine.Distance)
我想把一个特定的文件列表加载到Spark中。我创建了一个UDF来过滤文件列表,因此我获得了一个和我要加载的文件。我试图使用指向API的链接,但由于某些原因,它告诉我“重载方法值csv具有替代选项:(paths:String*)org.apache.spark.sql.dataframe(csvdataset:org.apache.spark.sql.dataframe[String])org.ap
我每周在我的Neo4j数据库中导入CSV,90%的数据已经存在。是我的数据库更新过程。 我正在将数据与ids合并,我对这些设置了一个独特的约束来确保这一点。 从技术角度来看一切都很好。但从运营的角度来看,我有一些需求: 谢谢你的帮助!
我从几个csv文件迭代上传节点和边,每个节点类型一个。加载节点工作得很好,但加载边并不总是有效。实际上,有些节点有数字作为标识符--如果是这样的话,所有这种类型的节点都有数字--但加载为字符串,因此创建边失败。手动创建一个边,添加用双引号包装标识符,效果很好。 边缘: 密码命令:
当我在spack-2.2.0中加载xml文件时,如下所示: 它向我展示了一个错误: JAVAlang.ClassNotFoundException:未能找到数据源:xml。请在http://spark.apache.org/third-party-projects.html在org。阿帕奇。火花sql。处决数据源。数据源$。org上的lookUpdateSource(DataSource.scal