小编hat*_*rix的帖子

python数学,numpy模块不同的结果?

计算一个值的余弦会得到略微不同的结果.如何检查这种差异是否在机器精度范围内?

import math
math.cos(60.0/180.0*math.pi)
-> 0.5000000000000001

import numpy
numpy.cos(60.0/180.0*numpy.pi)
-> 0.50000000000000011
Run Code Online (Sandbox Code Playgroud)

python floating-point numpy

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

如何在emacs中清除ipython缓冲区?

我在emacs缓冲区中使用运行和交互式ipython shell ipython.el.我想知道是否有办法清除屏幕?由于它没有在终端上运行,所以import os; os.system('CLS')技巧不起作用.谢谢.

emacs ipython

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

numpy.ma.cov - 具有缺失值的成对相关性?

示例数据集(从更大的矩阵中随机抽取行)

import numpy as np

test = [[np.nan, np.nan, 0.217, 0.562],
        [np.nan, np.nan, 0.217, 0.562],
        [0.269, 0.0, 0.217, 0.562],
        [np.nan, np.nan, 0.217, -0.953],
        [np.nan, np.nan, 0.217, -0.788],
        [0.75, 0.0, 0.217, 0.326],
        [0.207, 0.0, 0.217, 0.814],
        [np.nan, np.nan, 0.217, 0.562],
        [np.nan, np.nan, 0.217, -0.022],
        [np.nan, np.nan, 0.217, 0.562],
        [np.nan, np.nan, 0.217, -0.953],
        [np.nan, np.nan, 0.217, -0.953],
        [0.078, 0.0, 0.217, -0.953],
        [np.nan, np.nan, 0.217, -0.953],
        [0.078, 0.0, 0.217, 0.562]]

maskedarr = np.ma.array(test)

np.ma.cov(maskedarr,rowvar=False,allow_masked=True)

[[-- -- -- --]
 [-- -- -- --]
 [-- …
Run Code Online (Sandbox Code Playgroud)

python numpy

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

在ggplot的顶部和右侧添加轴刻度线?

base图形中,我们可以通过使用axisside参数轻松地在图的不同侧面添加刻度标记:

par(tck = 0.025)
plot(1:10)
axis(side = 3, labels = FALSE)
axis(side = 4, labels = FALSE)
Run Code Online (Sandbox Code Playgroud)

如何在顶部和右侧镜像x和y轴刻度ggplot2?有annotation_logticks可以做到这一点,但似乎只适用于对数标度(因为函数的名称适用).对于线性刻度,是否有类似的简单方法?

r ggplot2

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

访问Emacs迷你缓冲区中的OS X/UNIX环境变量

我在OS X Leopard上编译了Emacs 23,我很喜欢它.但是当我从Aquamancs切换时,我注意到的一件事是我无法再访问我在.bash_profile文件中指定的环境变量.例如,我有一条线:

export WORK=/Users/myname/Documents/otherpaths/Work
Run Code Online (Sandbox Code Playgroud)

所以要打开文件我可以输入迷你缓冲区:

Find file: $WORK/projectname/filename.txt
Run Code Online (Sandbox Code Playgroud)

或类似的东西,以省去键入整个文件路径的麻烦.

我发现了一些关于从这个站点编辑〜/ .MacOSX/environment.plist,.profile和.login文件的说明:

http://www.emacswiki.org/emacs/CarbonEmacsPackage

但似乎不起作用,我不确定它是否适用.我想知道是否有人知道解决方案?在期待中感谢,

-Stephen

macos emacs environment-variables

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

由propset设置的svn版本号不匹配

我在项目期间添加了$ Rev $标签并在一组文件上调用了svn propset.显示的版本号是$ Rev:8 $,但在结账时它表示我在修订版本10.我认为$ Rev $计数器不反映实际的修订版号,但是自svn propset被调用后的修订版本?谁知道我怎么能同步这两个?

svn revision

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

具有相等轴的散点图

我有一个如下所示的数据集:

DataFrame <- data.frame(x=runif(25),y=runif(25),
                        z=sample(letters[1:4],25,rep=TRUE))
Run Code Online (Sandbox Code Playgroud)

并且使用Lattice软件包,我可以使用以下行创建具有相等轴(使用1:1线穿过中心)的散点图:

xyplot(y ~ x | z, data=DataFrame,
       scales=list(relation="free"),
       prepanel=function(x,y,...) {
         rg <- range(na.omit(c(x,y)))
         list(xlim=rg,ylim=rg)
       },panel=function(x,y,...) {
         panel.abline(0,1)
         panel.xyplot(x,y,...)
       })
Run Code Online (Sandbox Code Playgroud)

在ggplot2中,我已经走到了这一步:

ggplot(data=DataFrame) + geom_point(aes(x=x,y=y)) +
  facet_grid(~z,scales="free") + coord_equal(ratio=1) +
  geom_abline(intercept=0,slope=1)
Run Code Online (Sandbox Code Playgroud)

但我不确定coord_equal()是否是我正在寻找的功能.什么可能是ggplot2中的等效函数调用?

r ggplot2

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

Emacs组织模式:组织到HTML转换 - 链接到不同页面中的部分?

如何在org-mode中链接到单独页面的一部分并将其链接到html中?例如,如果在文件file.org中,我有一个X部分的标签:

** Section X
#+LABEL: sec:X
Run Code Online (Sandbox Code Playgroud)

我可以[[sec:X][section X]]在file.org中参考本节.我可以[[file:file.org][link to file.html]]从外部文档链接到file.org (并在发布时自动链接到相应的html文件).但是在本文档之外,我不能将X部分称为[[file:file.org#sec:X][link to section X of file.html]]因为部分标签被转换为数字(例如sec-3_1).所以我必须链接到它[[file:file.html#sec-3_1][link to section X of file.html]],但这假设我知道sec:X标签将转换为sec-3_1...

(我使用的是用于org-publish-project转换的默认函数.)

emacs org-mode

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

如何将常规numpy数组转换为记录数组?

我读了一系列数字

np.array(f.read().split(),dtype=np.float64)
Run Code Online (Sandbox Code Playgroud)

然后我使用它将其转换为二维数组np.reshape().

在此之后,如何转换arr为记录数组?我尝试了(类似)以下内容:

filename = 'unstructured-file.txt'
nfields = 3
names = ('r','g','b')
with open(filename,'r') as f:
    arr = np.array(f.read().split(),dtype=np.float64)
    arr = arr.reshape(-1,nfields)
    out = np.array(arr,dtype=zip(names,['float64']*length(names))
Run Code Online (Sandbox Code Playgroud)

但是说 TypeError: expected a readable buffer object

有什么建议?

编辑:我想要做的主要是命名我的列.

代替

out = np.array(arr,dtype=zip(names,['float64']*length(names))
Run Code Online (Sandbox Code Playgroud)

如果我用这个,

out = np.core.records.fromrecords(arr.reshape(-1,nfields),names=','.join(names))
Run Code Online (Sandbox Code Playgroud)

我可以使用out['r']等等,但是out.dtype.names是无.到底是怎么回事?

EDIT2

非结构化文件看起来像

 Some text
 More text
       100  1.000000E-01        46
 -1.891701E+04  1.702921E+02 -2.323660E+04  4.547841E+03 -2.778444E+04
  0.000000E+00  0.000000E+00  0.000000E+00  0.000000E+00 -2.149862E+04
  1.753467E+02  3.410277E+03 -1.034898E+05  2.778692E+04  0.000000E+00
  0.000000E+00  0.000000E+00  0.000000E+00 …
Run Code Online (Sandbox Code Playgroud)

python numpy

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

Numpy:使用numpy.ndarray.view的永久性更改?

如果我想永久更改numpy数组的数据类型,重新分配是最好的方法吗?

这是一个说明语法的示例:

import numpy as np
x = np.array([1],dtype='float')
x = x.view(dtype=('x','float"))
Run Code Online (Sandbox Code Playgroud)

但是,我更愿意更改"就地"更改数据类型.

有没有办法在适当的位置更改数组的dtype?或者这样的东西更好吗?:

x = x.view(dtype=('x',"float")).copy()
Run Code Online (Sandbox Code Playgroud)

python numpy

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