将Julia数据帧转换为Python数据帧

将Julia数据帧转换为Python数据帧,python,pandas,dataframe,julia,Python,Pandas,Dataframe,Julia,我正在尝试将PyCall.jlwrap('Julia')对象转换为数据帧。我使用PyJulia在Julia中运行一个优化算法,结果是抛出一个dataframe对象。我想将该对象转换为数据帧 这与5年前提出的问题相似。但是,没有任何代码建议如何完成传输 任何帮助都是有用的 这是我目前设置的代码。知道“优化程序”后台发生的事情并没有多大用处,只知道“run\u hybrid”和“run\u storage”命令返回的是一个数据帧: ###加载pyjulia所需的模块 从julia导入Main作为jl

我正在尝试将PyCall.jlwrap('Julia')对象转换为数据帧。我使用PyJulia在Julia中运行一个优化算法,结果是抛出一个dataframe对象。我想将该对象转换为数据帧

这与5年前提出的问题相似。但是,没有任何代码建议如何完成传输

任何帮助都是有用的

这是我目前设置的代码。知道“优化程序”后台发生的事情并没有多大用处,只知道“run\u hybrid”和“run\u storage”命令返回的是一个数据帧:

###加载pyjulia所需的模块
从julia导入Main作为jl
##加载我的用户定义模块
jl.include(“优化计划3.jl”)
##从模块运行函数
结果=jl.运行混合动力(通用输入)
##返回的项目的测试类型
jl.类型(结果)
返回:
##试着变成熊猫
测试=局部放电数据帧(结果)
值错误回溯(上次最近调用)

在()

---->1测试=局部放电数据帧(结果)

在初始化中(自身、数据、索引、列、数据类型、副本)

420 dtype=values.dtype,copy=False) 421其他: 422 raise VALUERROR('DataFrame构造函数调用不正确!')

423

424 NDFrame.init(self、mgr、fastpath=True)

ValueError:未正确调用数据帧构造函数

如果我使用这个包,我会得到一个错误(在Python中读取Julia数据帧)。但是,它似乎与包配合得很好:

>>从julia导入Main作为jl
>>>作为pd进口熊猫
>>>jl.eval(“使用熊猫”)
>>>res=jl.eval('DataFrame(Dict(:age=>[27,29,27],:name=>[“James”,“Jill”,“Jake”])))
>>>jl.类型(res)
#
>>>df=pd.数据帧(分辨率)
>>>df
年龄名称
0 27詹姆斯
1 29吉尔
2 27杰克

这是在Win10上用Python 3.8.2和Julia 1.3.1测试的。展示您已经尝试过的内容会很有用。您不能将其写成
csv
然后用Python阅读吗?谢谢@drec4s我添加了一些代码。@furas,我意识到这是一个选项,但我更愿意将数据管理保留在内部,因为我需要使用Python Pandas操作最终输出。有没有其他方法可以做到这一点,即,将Pandas数据帧转换为julia数据帧(例如,当工作主要用Python完成时,只有瓶颈要在julia中执行)?更准确地说:我们可以做
jl.dfj=df
,但
jl.dfj
是一个
PyObject
而不是一个数据帧(即使使用包
DataFrames
>>> from julia import Main as jl
>>> import pandas as pd
>>> jl.eval('using Pandas')
>>> res = jl.eval('DataFrame(Dict(:age=>[27, 29, 27], :name=>["James", "Jill", "Jake"]))')
>>> jl.typeof(res)
#<PyCall.jlwrap PyObject>
>>> df = pd.DataFrame(res)
>>> df
    age   name
0   27  James
1   29   Jill
2   27   Jake