我试图在Windows 7 64位机器from __future__ import division上IPython启动像启动一样的东西python 2.7 64 bit.
我搜索了网页,我找到的推荐方法是在.py文件中放入一个说明文件:C:\Users\Me\.ipython\profile_default\startup.我已经放了一个.py包含的简单文件
from __future__ import division
from __future__ import unicode_literals
Run Code Online (Sandbox Code Playgroud)
在那个文件夹中.但它实际上什么也没做.更令人困惑的是该文件似乎执行,因为如果我在其中放置一些随机错误行,我会看到Ipython启动时出错.仍然没有导入除法,必须重新导入它from __future__ import division在shell中输入.
我尝试了它Anaconda和Winpython(IPython此分布的设置在其他文件夹中)具有相同的结果.我重新导入后一切正常.完全卡在这里,请帮忙!
我有一个data.table滴答数据,我想将其聚合到秒时间范围内。虽然得到max, minandlast非常简单:
data[, list(max(value), min(value), last(value)), by=time]
Run Code Online (Sandbox Code Playgroud)
我正在努力获取对应于某个第二个时间戳的第一个数据点。手册中没有任何内容。有没有一种简单的方法可以做到这一点,比如 SQL TOP?
假设我在dataframe / data.table中有两列,一列是级别,另一列是音量。我想计算按音量加权的级别的滚动平均值,因此对于某些滚动窗口,体积充当权重(归一化为1)。
基数R具有weighted.mean()函数,该函数对两个静态向量进行类似的计算。我尝试使用sapply将list / vector fo参数传递给它,并创建了rollign系列,但无济于事。
我应该与weighted.mean()一起使用哪种“应用”机制才能获得所需的结果,否则我将不得不循环/编写自己的函数?
///////////////////////////////////////////////////// ///////////////////////////////////////
最后,我决定编写简单的自定义函数,该函数利用了出色的RccpRoll软件包。我发现RccpRoll速度快,比其他滚动方法快得多,这对我来说很重要,因为我的数据有几百万行。
该函数的代码如下所示(由于RccpRoll返回不带NA的数据,因此我在开头增加了一些NA):
require(RcppRoll)
my.rollmean.weighted <- function(vec1,vec2,width){
return(c(rep(NA,width-1),roll_sum(vec1*vec2,width)/roll_sum(vec2,width)))
}
Run Code Online (Sandbox Code Playgroud)