小编Bor*_*lik的帖子

matplotlib模拟R的`对`

R有一个有用的函数pairs,它为数据集中变量之间的成对连接提供了很好的矩阵.结果图看起来类似于下图,从这篇博文中复制:

对

有没有基于python的matplolib准备使用的功能?我搜索了它的画廊,但找不到任何类似于我需要的东西.从技术上讲,这应该是一项简单的任务,但正确处理所有可能的案例,标签,标题等是非常繁琐的.

更新请参阅下面的答案,快速而肮脏的近似.

python r matplotlib

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

如何复制一个字典并在一行代码中修改它

我经常需要创建一个或两个项目彼此不同的词汇.这是我通常做的事情:

setup1 = {'param1': val1, 
            'param2': val2,
            'param3': val3,
            'param4': val4,
            'paramN': valN}

setup2 = copy.deepcopy(dict(setup1))
setup2.update({'param1': val10, 
                   'param2': val20})
Run Code Online (Sandbox Code Playgroud)

程序中有一个点setup2是相同副本的事实setup1让我感到紧张,因为我担心在程序生命的某个时刻,两条线可能会分开,这对于太多的bug来说是一个滑坡.

理想情况下,我希望能够在一行代码中完成此操作(类似这样):

setup2 = dict(setup1).merge({'param1': val10, 
                        'param2': val20})
Run Code Online (Sandbox Code Playgroud)

当然,我可以使用分号将两个命令压缩到一个物理行中,但这对我来说看起来很难看.还有其他选择吗?

python coding-style

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

Python继承 - 如何禁用一个函数

在C++中,您可以通过在子类中将其声明为私有来禁用父类中的函数.如何在Python中完成?IE如何从子公共接口隐藏父功能?

python inheritance private interface

31
推荐指数
4
解决办法
2万
查看次数

在IPython笔记本中请求密码

我有一个IPython笔记本,它使用加密的ssh密钥文件通过SSH访问数据.我不想将密码存储在笔记本中(也不是单独的文件中).我可以使用input以便从用户提示读取密码,但在这种情况下,密码在屏幕上可见.有没有办法安全地获取密码?

python ssh ipython

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

重新排序矩阵元素以反映naiive python中的列和行聚类

我正在寻找一种在矩阵行上分别执行聚类的方法,而不是在其列上,重新排序矩阵中的数据以反映聚类并将它们放在一起.聚类问题很容易解决,树形图创建也是如此(例如在本博客"编程集体智慧"中).但是,如何重新排序数据仍然不清楚.

最后,我正在寻找一种使用朴素Python创建类似下图的方法(使用任何"标准"库,如numpy,matplotlib等,但不使用R或其他外部工具).

树形图http://www2.warwick.ac.uk/fac/sci/moac/currentstudents/peter_cock/r/heatmap/no_scaling.png

澄清

我被问到重新排序是什么意思.当您首先按矩阵行将数据聚类在矩阵中时,然后通过其列,每个矩阵单元可以通过两个树形图中的位置进行标识.如果对原始矩阵的行和列进行重新排序,使得在树形图中彼此靠近的元素在矩阵中彼此靠近,然后生成热图,则数据的聚类对于查看者来说可能变得明显(如上图所示)

python statistics numpy cluster-analysis scipy

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

在ipython历史中搜索

ipython%his命令输出用户输入的最近命令.是否可以在这些命令中搜索?像这样的东西:

[c for c in %history if c.startswith('plot')]
Run Code Online (Sandbox Code Playgroud)

编辑我不是在寻找重新运行命令的方法,而是在历史列表中找到它.当然,有时我会想要在找到命令后重新运行命令,无论是逐字还是修改.

编辑搜索ctr-r然后键入plot会给出以"plot"开头的最新命令.它不会列出以它开头的所有命令.你也不能在命令的中间或末尾搜索

在这里扩展PreludeAndFugue的解决方案我正在寻找:

[l for l in  _ih if l.startswith('plot')]
Run Code Online (Sandbox Code Playgroud)

在这里,if条件可以用正则表达式代替

python ipython

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

为rpy2转换python对象

以下代码应该在rpy2中创建热图

import numpy as np
from rpy2.robjects import r
data = np.random.random((10,10))
r.heatmap(data)    
Run Code Online (Sandbox Code Playgroud)

但是,它会导致以下错误

Traceback (most recent call last):
  File "z.py", line 8, in <module>
    labRow=rowNames, labCol=colNames)
  File "C:\Python25\lib\site-packages\rpy2\robjects\__init__.py", line 418, in __call__
    new_args = [conversion.py2ri(a) for a in args]
  File "C:\Python25\lib\site-packages\rpy2\robjects\__init__.py", line 93, in default_py2ri
    raise(ValueError("Nothing can be done for the type %s at the moment." %(type(o))))
ValueError: Nothing can be done for the type <type 'numpy.ndarray'> at the moment.
Run Code Online (Sandbox Code Playgroud)

从文档中我了解到r.heatmap需要"一个数字矩阵".如何将np.array转换为所需的数据类型?

python r rpy2

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

如何组合显示在同一页面上的两个PDF页面?

我正在寻找一个免费的工具,允许重新安排PDF文档的页面,并在每张纸上组合多个页面.第一部分(重新安排)很容易通过许多工具解决(我使用PyPDF).

问题在于第二个要求:将两个(或更多)页面组合​​成单个页面.例如,取两页(A和B),旋转它们,缩放并组合成这样的单个页面

------       ------            ------
|     |      |      |          |     |
|  A  |      |  B   |          | a   |
|     |      |      |          |     |
|     |      |      |  --->    ------
|     |      |      |          |     |        
|     |      |      |          | b   |        
|     |      |      |          |     |        
------       ------            ------
Run Code Online (Sandbox Code Playgroud)

该解决方案需要在Linux上运行,最好也在Windows上运行.我正在寻找使用Python或Perl绑定的控制台应用程序或库.

编辑有一个pdfnup库应该执行这种转换,并且是跨平台的,但由于类似于的错误,我无法使用它.

pdf pdf-generation

25
推荐指数
3
解决办法
8万
查看次数

在PyBrain神经网络中创建自定义连接

我想创建一个遵循以下布局的人工神经网络(在PyBrain中):

布局

但是,我无法找到实现这一目标的正确方法.我在文档中看到的唯一选项是创建完全连接的层的方法,这不是我想要的:我希望我的一些输入节点连接到第二个隐藏层而不是第一个隐藏层.

python neural-network pybrain

25
推荐指数
1
解决办法
6314
查看次数

什么更好,ConfigObj或ConfigParser?

哪个更适合为Python程序,内置模块(ConfigParser)或独立项目(ConfigObj)创建设置文件?

python configparser configobj

22
推荐指数
3
解决办法
7754
查看次数