gpt4 book ai didi

python - 如何使用 Jython 导入 Pandas

转载 作者:太空狗 更新时间:2023-10-29 22:21:38 24 4
gpt4 key购买 nike

我是 python 新手,我已经安装了 Jython2.7.0

Java

import org.python.util.PythonInterpreter;
import org.python.core.*;

public class Main {
public static void main(String[] args) {
PythonInterpreter interp = new PythonInterpreter();
interp.execfile("D:/Users/JY/Desktop/test/for_java_test.py");
interp.close();
}
}

python

import pandas as pd
import ctypes

def main():
data = pd.read_csv('for_test.csv')
data_mean = data.a*2
data_mean.to_csv('catch_test.csv',index=False)
ctypes.windll.user32.MessageBoxW(0, "Done. Output: a * 2", "Output csv", 0)

if __name__ == '__main__':
main()

然后我得到了这个错误。

Exception in thread "main" Traceback (most recent call last):
File "D:\Users\JYJU\Desktop\test_java\for_java_test.py", line 1, in <module>
import pandas as pd
ImportError: No module named pandas

如果我想使用 pandas,我该如何解决这个问题?

最佳答案

您目前不能将 Pandas 与 Jython 一起使用,因为它依赖于 CPython 特定的 native 扩展。一个依赖项是 NumPy,另一个是 Cython(它实际上不是原生 CPython 扩展,而是生成这样的扩展)。

关注JyNI project (“Jython native 接口(interface)”)。它使 Jython 能够使用 native CPython 扩展,其确切目的是解决您遇到的问题。然而,它仍在大力开发中,还不能将 Pandas 或 NumPy 加载到 Jython 中,但这两个框架都在优先级列表中。

(例如,ctypes 已经在一定程度上发挥了作用。)

此外,它目前仅支持 POSIX(已在 Linux 和 OSX 上测试)。

如果您不需要特别需要 Jython,而只是一些 Java/Pandas 互操作,那么一个已经可行的解决方案是嵌入 CPython 解释器。 JPYJEP是提供这个的项目。使用它们中的任何一个,您应该能够互操作 Java 和 Pandas(或任何其他 CPython 特定的框架)。

关于python - 如何使用 Jython 导入 Pandas,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36213908/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com