在 R 中,您可以使用指定的窗口计算滚动平均值,该窗口每次可以移动指定的量。
但是,也许我只是没有在任何地方找到它,但您似乎无法在 Pandas 或其他 Python 库中找到它?
有谁知道解决这个问题的方法?我会给你一个例子来说明我的意思:
这里我们有双周数据,我正在计算两个月移动平均线,该移动平均线移动 1 个月,即 2 行。
所以在 RI 中会做类似的事情:two_month__movavg=rollapply(mydata,4,mean,by = 2,na.pad = FALSE)
Python 中没有等价物吗?
编辑1:
DATE A DEMAND ... AA DEMAND A Price
0 2006/01/01 00:30:00 8013.27833 ... 5657.67500 20.03
1 2006/01/01 01:00:00 7726.89167 ... 5460.39500 18.66
2 2006/01/01 01:30:00 7372.85833 ... 5766.02500 20.38
3 2006/01/01 02:00:00 7071.83333 ... 5503.25167 18.59
4 2006/01/01 02:30:00 6865.44000 ... 5214.01500 17.53
Run Code Online (Sandbox Code Playgroud) 我正在使用 Chrome 扩展程序从一个站点抓取数据。网站上有一个“加载更多”div,可在点击时加载接下来的 30 条记录。我使用下面的代码单击并加载数据:
内容.js
setTimeout(function(){
var activityTab = document.getElementsByClassName("loadMore")[0];
activityTab.click();
}, 5000);
Run Code Online (Sandbox Code Playgroud)
它加载接下来的 30 条记录并生成一个新的“加载更多”div,但我无法单击这个新的动态加载的“加载更多”div。如何在 JavaScript 中访问原始站点中动态生成的 HTML?我只能访问页面加载时原始站点的 DOM 中可用的数据。
我有一个多索引数据框,我想知道为 3 个标准中的每一个支付了特定债务门槛的客户百分比:城市、卡和抵押品。
这是一个工作脚本:
import pandas as pd
d = {'City': ['Tokyo','Tokyo','Lisbon','Tokyo','Tokyo','Lisbon','Lisbon','Lisbon','Tokyo','Lisbon','Tokyo','Tokyo','Tokyo','Lisbon','Tokyo','Tokyo','Lisbon','Lisbon','Lisbon','Tokyo','Lisbon','Tokyo'],
'Card': ['Visa','Visa','Master Card','Master Card','Visa','Master Card','Visa','Visa','Master Card','Visa','Master Card','Visa','Visa','Master Card','Master Card','Visa','Master Card','Visa','Visa','Master Card','Visa','Master Card'],
'Colateral':['Yes','No','Yes','No','No','No','No','Yes','Yes','No','Yes','Yes','No','Yes','No','No','No','Yes','Yes','No','No','No'],
'Client Number':[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22],
'% Debt Paid':[0.8,0.1,0.5,0.30,0,0.2,0.4,1,0.60,1,0.5,0.2,0,0.3,0,0,0.2,0,0.1,0.70,0.5,0.1]}
df = pd.DataFrame(data=d)
df1 = (df.set_index(['City','Card','Colateral'])
.drop(['Client Number'],axis=1)
.sum(level=[0,1,2]))
df2 = df1.reindex(pd.MultiIndex.from_product(df1.index.levels), fill_value=0)
Run Code Online (Sandbox Code Playgroud)
这是结果:
为了克服这个问题,我尝试了以下方法但没有成功:
df1 = (df.set_index(['City','Card','Colateral'])
.drop(['Client Number'],axis=1)
[df.Total = 0].count(level=[0,1,2])/[df.Total].count()
[df.Total > 0 & df.Total <=0.25 ].count(level=[0,1,2])/[df.Total].count()
[df.Total > 0.25 & df.Total <=0.5 ].count(level=[0,1,2])/[df.Total])
[df.Total > 0.5 & df.Total <=0.75 ].count(level=[0,1,2])/[df.Total]
[df.Total > 0.75 & df.Total <1 …Run Code Online (Sandbox Code Playgroud) 假设我有以下数据框:
test <- data.frame(X = c(1,2,3), Y = c(4,5,6), row.names = c("T1", "T2", "T3"))
test2 <- data.frame(mean = c(1,2,5), row.names = c("T1", "T2", "T3"))
Run Code Online (Sandbox Code Playgroud)
我想将测试数据帧中的所有行乘以由行名称匹配的 test2 数据帧中的值。我该怎么做才能得到这样的答案:
answer <- data.frame(X = c(1,4,15), Y = c(4,10,30), row.names = c("T1", "T2", "T3"))
Run Code Online (Sandbox Code Playgroud) 我想将大量 MS Word 文件转换为纯文本格式。我不知道如何在 Python 中做到这一点。我在网上找到了以下代码。我的路径是本地路径,所有文件名都类似于 cx-xxx(即 c1-000、c1-001、c2-000、c2-001 等):
from docx import [name of file]
import io
import shutil
import os
def convertDocxToText(path):
for d in os.listdir(path):
fileExtension=d.split(".")[-1]
if fileExtension =="docx":
docxFilename = path + d
print(docxFilename)
document = Document(docxFilename)
textFilename = path + d.split(".")[0] + ".txt"
with io.open(textFilename,"c", encoding="utf-8") as textFile:
for para in document.paragraphs:
textFile.write(unicode(para.text))
path= "/home/python/resumes/"
convertDocxToText(path)
Run Code Online (Sandbox Code Playgroud) for (; 1;) {
if (fork() == 0) break;
int sig = 0;
for (; 1; usleep(10000)) {
pid_t wpid = waitpid(g->pid[1], &sig, WNOHANG);
if (wpid > 0) break;
if (wpid < 0) print("wait error: %s\n", strerror(errno));
}
}
Run Code Online (Sandbox Code Playgroud)
waitpid应该立即返回子进程的pid!
但waitpid大约90秒后得到了pid号,
cube 28139 0.0 0.0 70576 900 ? Ss 04:24 0:07 ./daemon -d
cube 28140 9.3 0.0 0 0 ? Zl 04:24 106:19 [daemon] <defunct>
Run Code Online (Sandbox Code Playgroud)
strace -p 28139
Process 28139 attached …Run Code Online (Sandbox Code Playgroud) 对熊猫来说很新鲜.
如果存在具有特定列值的行,是否有办法检查给定的pandas数据帧.假设我有一个"名称"列,我需要检查某个名称是否存在.
一旦我这样做,我将需要进行类似的查询,但一次只有一堆值.我读到有'isin',但我不确定如何使用它.因此,我需要进行一个查询,以便获得所有具有"Name"列的行,这些行与大量名称中的任何值匹配.
我正在尝试在 LattePanda 板(Ubuntu 16.04,Kernel_version=4.14.16-041416-generic)中安装 MediaSDK。Lattepanda 拥有 Intel(R) Atom(TM) x5-Z8350。
要安装 MediaSDK,我遵循了本指南。
根据参考指南,必须从 GitHub克隆MediaSDK 存储库,但该存储库不包括tools/builder/build_mfx.pl我从另一个存储库中获得的存储库。
当我在执行步骤 #10 后运行 vainfo 命令时,它显示 iHD_drv_video.so init 失败:
admin@lattepanda:~/work$ vainfo
libva info: VA-API version 1.5.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'iHD'
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so
libva info: Found init function __vaDriverInit_1_5
libva error: /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so init failed
libva info: va_openDriver() returns 1
vaInitialize failed with error code …Run Code Online (Sandbox Code Playgroud) 我有两台机器(linux,Mac),需要使用vagrant来管理虚拟机。VirtualBox 用于Liux,而parallels 用于Mac。所以我在 vagrant 配置文件中配置了这两个提供程序,如下所示:
Vagrant.configure('2') do |config|
config.ssh.forward_agent = true
config.ssh.password = 'crunch'
config.vm.box = 'ubuntu/xenial64'
config.vm.provider 'virtualbox' do |vb|
vb.gui = true
vb.memory = '8192'
vb.name = 'ubuntu'
end
config.vm.provider 'parallels' do |vb|
vb.gui = true
vb.memory = '8192'
vb.name = 'ubuntu'
config.vm.box = 'parallels/ubuntu-14.04'
end
Run Code Online (Sandbox Code Playgroud)
在我的 mac 系统上,当我运行以下命令但收到错误时:
$ vagrant up --provider parallels
An active machine was found with a different provider. Vagrant
currently allows each machine to be brought up with only a single
provider at …Run Code Online (Sandbox Code Playgroud) 这个问题在获得解决方案方面并不难,但我想知道是否有任何 C++ 函数或算法可以解决它。
我在研究这个问题时想到了这个想法Count character chances in a string in C++
所以想知道除了从头开始编写一个函数来检查字符串中某个字符是否出现特定次数之外,我们是否还有其他选择。例如让我们说:
std::string s = "a_b_c_d_e_f_g_h_i_j_k_l_m";
Run Code Online (Sandbox Code Playgroud)
并且我们想查找 string 中是否至少有 2 个 '_'。如果我们使用std::count它将返回所有“_”的计数。std::count_if也会以类似的方式行事。我可以编写一个代码来循环遍历字符串并在计数达到 2 时立即中断,但我想知道我们是否在 C++ 算法或函数中有一些现有的解决方案。
这里的思考过程是,如果我们得到一个很长的字符串作为输入,并且做某事的标准是基于某个特定字符是否至少出现n次,那么遍历整个字符串是一种浪费。
在Keras中是否可以将图像和值向量作为一个模型的输入?如果是,怎么办?
我要创建的CNN具有图像和输入上的6个值的向量。
输出是3个值的向量。
我正在使用ZFS Exporter从 Linux 服务器收集 Prometheus v.2.19 中的 ZFS 指标。数据是从所有目标收集的,并且值是正确的,但是有一个奇怪的问题:我想计算 ARC 未命中与 ARC 命中的比率百分比,因此我使用以下公式:
100 * rate(zfs_arc_stats{stat='misses'}[5m]) / rate(zfs_arc_stats{stat='hits'}[5m])
Run Code Online (Sandbox Code Playgroud)
但它不产生任何数据。我可以分别从每个速率表达式中获取值,但不能从上面的公式中获取值。如果我使用具有相同标签的公式,即:
100 * rate(zfs_arc_stats{stat='hits'}[5m]) / rate(zfs_arc_stats{stat='hits'}[5m])
Run Code Online (Sandbox Code Playgroud)
它给出的正确结果为 100,因为未命中与未命中或命中与命中的比率始终为 1:1。我尝试了使用其他来源(即 PCP、Collectd)的指标的类似公式,这些公式工作得很好,即。我可以计算具有不同标签的相同指标的比率,因此问题似乎可能特定于 ZFS Exporter 的指标。该导出器的指标非常少,但每个指标都有许多不同的统计数据,由“stat”标签的值标识。rate所有指标都是仪表类型,但我认为这对于PromQL 中的函数来说并不重要。无论如何,就像我之前提到的,比率可以单独计算,只有比率失败。有人请建议如何解决这个问题。
我一直在为此工作 5 天,每天超过 7 小时。我不是最好的编码员,所以我需要一些帮助。我需要知道如何在 Linux 上使用 C 程序从 /proc 获取信息。信息必须打印出来,并包括以下内容: