gpt4 book ai didi

python glmnet "No module named _glmnet"

转载 作者:太空宇宙 更新时间:2023-11-04 03:52:41 26 4
gpt4 key购买 nike

更新 越来越近了。现在我在 .pyf 文件上运行 f2py 应该生成 _glmnet 模块。

我构建包 python-glmnet使用以下命令打包。

python setup.py config_fc --fcompiler=gnu95         
--f77flags='-fdefault-real-8'
--f90flags='-fdefault-real-8' build

但是当我导入模块时出现这个错误:

File "/Users/rose/221/tagger/tagger/glmnet/glmnet.py", line 2, in import _glmnet ImportError: No module named _glmnet

如何导入该模块?

glmnet 目录还包含一个以以下内容开头的 glmnet.pyf 文件:

!    -*- f90 -*-
! Note: the context of this file is case sensitive.

python module _glmnet ! in
interface ! in :_glmnet
subroutine elnet(ka,parm,no,ni,x,y,w,jd,vp,ne,nx,nlam,flmin,ulam,thr,isd,lmu,a0,ca,ia,nin,rsq,alm,nlp,jerr) ! in :glmnet:glmnet.f
integer optional :: ka=1 ! Use covariance updates over naive by default
real*8 :: parm
integer intent(hide),check(shape(x,0)==no),depend(x) :: no=shape(x,0)
integer intent(hide),check(shape(x,1)==ni),depend(x) :: ni=shape(x,1)
real*8 dimension(no,ni) :: x
real*8 dimension(no),depend(no) :: y
real*8 dimension(no),depend(no) :: w
integer dimension(*) :: jd
real*8 dimension(ni),depend(ni) :: vp
integer optional,depend(x) :: ne=min(shape(x,1), nx)
integer :: nx
integer optional,check((flmin < 1.0 || len(ulam)==nlam)),depend(flmin,ulam) :: nlam=len(ulam)
real*8 :: flmin
real*8 dimension(nlam) :: ulam
real*8 :: thr
integer optional :: isd=1 ! Standardize predictors by default

更新

我在哪里可以找到这个 _glmnet 模块?它是否包含在 glmnet.pyf 文件中,如下所示?我尝试将此 glment 文件夹添加到我的 PYTHONPATH,但这并没有改变任何东西。

~/221/tagger/tagger/glmnet master ls
__init__.py example_lasso_elastic_net.py glmnet.pyc
__init__.pyc glmnet.f glmnet.pyf
elastic_net.py glmnet.py
~/221/tagger/tagger/glmnet master head -10 glmnet.pyf
! -*- f90 -*-
! Note: the context of this file is case sensitive.

python module _glmnet ! in
interface ! in :_glmnet
subroutine elnet(ka,parm,no,ni,x,y,w,jd,vp,ne,nx,nlam,flmin,ulam,thr,isd,lmu,a0,ca,ia,nin,rsq,alm,nlp,jerr) ! in :glmnet:glmnet.f
integer optional :: ka=1 ! Use covariance updates over naive by default
real*8 :: parm
integer intent(hide),check(shape(x,0)==no),depend(x) :: no=shape(x,0)
integer intent(hide),check(shape(x,1)==ni),depend(x) :: ni=shape(x,1)
~/221/tagger/tagger/glmnet master echo $PYTHONPATH
/Users/rose/221/tagger/tagger/glmnet:
~/221/tagger/tagger/glmnet master cd ..
~/221/tagger/tagger master python main.py
Traceback (most recent call last):
File "main.py", line 14, in <module>
from glmnet import glmnet
File "/Users/rose/221/tagger/tagger/glmnet/glmnet.py", line 2, in <module>
import _glmnet
ImportError: No module named _glmnet

最佳答案

据我所知,它正在寻找 _gmlnet 模块,它在 gmlnet.pyf 中定义。 gmlnet.pyf 不是 python 模块,它是一组用于名为 f2py 的程序的附加指令,python 将忽略 .pyf 文件.您需要使用 f2py 编译 .pyf 文件和一个 fortran 文件。使用这样的命令:

f2py -c --fcompiler=gnu95 gmlnet.pyf gmlnet.f

尝试安装 f2py,然后重新安装 gmlnet 包。

关于 python glmnet "No module named _glmnet",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20459390/

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