小编RTb*_*ard的帖子

无法安装ggp​​lot2:"library.dynam(lib,package,package.lib)中的错误:找不到共享对象'stringi.so'"

上周我从Ubuntu 14.04升级到14.10.自从更新以来我第一次尝试在RStudio中使用ggplot,我的ggplot包中出现了依赖性错误,并且不再注册为已安装(之前工作正常).当我尝试重新安装ggp​​lot2时:

install.packages("ggplot2",dep=TRUE)
Run Code Online (Sandbox Code Playgroud)

尝试安装依赖项时安装失败.这是输出尾部的样子:

* installing *source* package ‘stringr’ ...
** package ‘stringr’ successfully unpacked and MD5 sums checked
** R
** inst
** preparing package for lazy loading
Error in library.dynam(lib, package, package.lib) : 
  shared object ‘stringi.so’ not found
ERROR: lazy loading failed for package ‘stringr’
* removing ‘/home/james/R/x86_64-pc-linux-gnu-library/3.1/stringr’
Warning in install.packages :
  installation of package ‘stringr’ had non-zero exit status
ERROR: dependency ‘stringr’ is not available for package ‘reshape2’
* removing ‘/home/james/R/x86_64-pc-linux-gnu-library/3.1/reshape2’
Warning in install.packages :
  installation of …
Run Code Online (Sandbox Code Playgroud)

ubuntu r ggplot2

10
推荐指数
1
解决办法
1万
查看次数

安装 PyQt5 时出现 FileNotFoundError

我一直在尝试安装 PyQt,但无法克服以下错误。我读过一些建议我应该升级 PIP、setup_tools 和 ez_install 的帖子。我已经尝试了所有这些但没有运气。有小费吗?

c:\Python27>pip install PyQt5_gpl-5.10.tar.gz
Processing c:\python27\pyqt5_gpl-5.10.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "c:\program files (x86)\python36-32\lib\tokenize.py", line 452, in open
    buffer = _builtin_open(filename, 'rb')
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\JAME~1.KRK\\AppData\\Local\\Temp\\pip-0u8uht47-build\\setup.py'

----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in C:\Users\JAME~1.KRK\AppData\Local\Temp\pip-0u8uht47-build\           
Run Code Online (Sandbox Code Playgroud)

3.6 中同样的事情:

c:\Program Files (x86)\Python36-32>pip install PyQt5_gpl-5.10.tar.gz
Processing c:\program files (x86)\python36-32\pyqt5_gpl-5.10.tar.gz
    Complete output from command python setup.py egg_info: …
Run Code Online (Sandbox Code Playgroud)

python windows installation pyqt

7
推荐指数
2
解决办法
8374
查看次数

"全球可能效率很低"

global在一个if命令中使用(在Matlab中)一个语句,所以我只有在真正需要时才将全局变量导入本地命名空间.

代码分析器警告我" global除非它是函数中的顶级语句,否则效率可能非常低".考虑到可能的内部实现,我发现这个限制非常奇怪和不寻常.我在考虑两种可能性:

  1. 这个警告的真正含义是" global它本身效率很低,所以不要在循环中使用它".特别是,在if中使用它,就像我正在做的那样,非常安全,而且警告发出错误(措辞不当)

  2. 警告是正确的; Matlab在后台使用了一些非常不寻常的变量加载机制,因此在if语句中导入全局变量要慢得多.在这种情况下,我想要提示或指示这些东西是如何工作的,因为我感兴趣,如果我想在将来编写有效的代码,这似乎很重要.

这两种解释中哪一项是正确的?(或者两者都不是?)

提前致谢.

编辑:更清楚:我知道这global很慢(显然我不能避免使用它,因为它是我正在使用的旧库的设计决定); 我问的是为什么Matlab代码分析器会抱怨

if(foo==bar)
    GLOBAL baz
    baz=1;
else
    do_other_stuff;
end
Run Code Online (Sandbox Code Playgroud)

但不是

GLOBAL baz
if(foo==bar)
    baz=1;
else
    do_other_stuff;
end
Run Code Online (Sandbox Code Playgroud)

我发现很难想象第一个应该比第二个慢的原因.

performance matlab global-variables

6
推荐指数
2
解决办法
2858
查看次数

使用全局变量会影响MATLAB的性能吗?

据我所知,MATLAB pass by reference在向其他函数发送参数时无法使用.我正在进行音频处理,而且我经常不得不将波形作为参数传递给函数,并且因为MATLAB使用pass by value这些参数,所以当我这样做时它会占用大量的RAM.

我正在考虑使用global变量作为一种方法将我的波形传递给函数,但我读到的每个地方似乎都有一个普遍的看法,这是一个坏主意,代码组织和潜在的性能问题...但我没有真的阅读有关这可能会如何影响性能的任何详细答案......

我的问题:使用全局变量(大小> 100MB)将参数传递给MATLAB中的其他函数会产生什么负面影响,包括1) 性能2) 通用代码组织和良好实践.

编辑:从下面的@ Justin的回答中可以看出,当你不修改函数中的参数时,MATLAB有时会使用按引用传递!由此,我有关于全局变量性能第二个相关问题:

使用全局变量会比使用pass by reference函数参数慢吗?

performance matlab global

5
推荐指数
1
解决办法
969
查看次数

Pyinstaller 与 scipy.signal ImportError:DLL 加载失败

使用 PyInstaller 3.3、Python 3.4 我编译了一个需要使用 scipy.signal.periodogram() 函数的程序,它导致 .exe 在启动时崩溃。我一直在 stack Overflow 和其他网站上搜索尝试包含正确 DLL 的方法,但没有成功。请帮我弄清楚我是否需​​要在 .spec 文件中包含一些特定的 DLL 或包含一些其他隐藏导入!

这是我的 PyInstaller 命令:

pyinstaller --noupx --hidden-import=tkinter --hidden-import=scipy --hidden-import=matplotlib constantG_constantHz.py
Run Code Online (Sandbox Code Playgroud)

这是启动我的 exe 后命令提示符中的相应错误:

Traceback (most recent call last):

  File "constantG_constantHz.py", line 16, in <module>

  File "C:\Users\esandberg\AppData\Local\Continuum\anaconda3\envs\py34\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
    exec(bytecode, module.__dict__)

  File "site-packages\scipy\signal\__init__.py", line 304, in <module>

  File "C:\Users\esandberg\AppData\Local\Continuum\anaconda3\envs\py34\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
    exec(bytecode, module.__dict__)

  File "site-packages\scipy\signal\bsplines.py", line 12, in <module>

  File "C:\Users\esandberg\AppData\Local\Continuum\anaconda3\envs\py34\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 631, in exec_module
    exec(bytecode, module.__dict__)

  File "site-packages\scipy\special\__init__.py", line …
Run Code Online (Sandbox Code Playgroud)

dll pyinstaller scipy python-3.4

5
推荐指数
2
解决办法
1万
查看次数

在 R 包中包含 TMB C++ 代码的指南

我最近发现了 TMB 的神奇之处,并且正在开发一个包,最好在其中包含 TMB c++ 模板,以用于计算成本相当高的模型。

我假设有可能:

  • 在软件包安装时自动编译 TMB 源代码

但我在 TMB 文档中找不到与此相关的任何明确指南。到目前为止,我的替代方案是编写在第一次调用使用未编译类的函数时编译 TMB 代码的函数……但我感觉有更好的方法可以做到这一点。

有没有人成功地将 TMB 函数包含在另一个包中,并且可以为我指出相关文档或示例的方向?

c++ r tmb

3
推荐指数
1
解决办法
1378
查看次数