小编S.V*_*S.V的帖子

pandas groupby 滚动平均值/中值并删除缺失值

如何通过滚动平均值/中位数并删除缺失值来进入熊猫组?即输出应该在计算平均值/中位数之前删除缺失值,而不是在存在缺失值时给我 NaN。

import pandas as pd
t = pd.DataFrame(data={v.date:[0,0,0,0,1,1,1,1,2,2,2,2],
                         'i0':[0,1,2,3,0,1,2,3,0,1,2,3],
                         'i1':['A']*12,
                         'x':[10.,20.,30.,np.nan,np.nan,21.,np.nan,41.,np.nan,np.nan,32.,42.]})
t.set_index([v.date,'i0','i1'], inplace=True)
t.sort_index(inplace=True)

print(t)
print(t.groupby('date').apply(lambda x: x.rolling(window=2).mean()))
Run Code Online (Sandbox Code Playgroud)

               x
date i0 i1      
0    0  A   10.0
     1  A   20.0
     2  A   30.0
     3  A    NaN
1    0  A    NaN
     1  A   21.0
     2  A    NaN
     3  A   41.0
2    0  A    NaN
     1  A    NaN
     2  A   32.0
     3  A   42.0

               x
date i0 i1      
0    0  A    NaN
     1  A   15.0
     2  A   25.0
     3  A    NaN …
Run Code Online (Sandbox Code Playgroud)

python dataframe pandas rolling-computation pandas-groupby

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

SortedDict 键:类型错误:“str”和“int”实例之间不支持“<”

请帮助我理解为什么在以下代码中设置key参数:SortedDict

from sortedcontainers import SortedDict
SortedDict({1:2, 0:1}) # works
SortedDict({1:2, 0:1}, key=lambda x: x) # TypeError
SortedDict({'a':2, 0:1}, key=lambda x: 1 if isinstance(x,str) else x) # TypeError
Run Code Online (Sandbox Code Playgroud)

给出以下错误:

TypeError: '<' not supported between instances of 'int' and 'str'
Run Code Online (Sandbox Code Playgroud)

如何修复这些示例?非常感谢您的帮助!

python key sorteddictionary

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

C++:如何使用 std::invoke_result_t 获取类成员函数的返回类型?

如何在 C++ 中使用 std::invoke_result_t 获取类成员函数的返回类型?

#include <type_traits>
#include <vector>

template <class T>
struct C
{
    auto Get(void) const { return std::vector<T>{1,2,3}; }
};

int main(void)
{
 // what should one put below to make x to have type std::vector<int> ?
 std::invoke_result_t<C<int>::Get, void> x;
 //                   ^^^^^^^^^^^^^^^^^
 return 0;
}
Run Code Online (Sandbox Code Playgroud)

非常感谢您的帮助!

c++ return-type member-functions invoke-result

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

包含点的 C/C++ 宏参数(成员访问运算符)

如何在 C/C++ 宏参数中使用包含点(成员访问运算符)的宏参数?

例子:

#define M(obj,y) obj.y##x
struct S { struct {int x;} c; int x; };
S s;
s.c.x = 1;
s.x = 2;
M(s,)   // works, 2 (resolves to s.x)
M(s,c.) // error: pasting formed '.x', an invalid preprocessing token
Run Code Online (Sandbox Code Playgroud)

怎样才能下定M(s,c.)决心呢s.c.x

感谢您的帮助!

c c++ arguments c-preprocessor member-access

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

分配给char [8]的向量

怎样才能给分配东西std::vector<char[8]>

#include <vector>
void test(void)
{
 std::vector<char[8]> x; // works

 x.push_back("7777777");
 //
 // error: array 'new' cannot have initialization arguments
 // error: object expression of non-scalar type 'char [8]' 
 //        cannot be used in a pseudo-destructor expression

 char a[8] = "7777777";  
 x.push_back(a);  
 //
 // error: array 'new' cannot have initialization arguments
 // error: object expression of non-scalar type 'char [8]' 
 //        cannot be used in a pseudo-destructor expression

 char b[2][8] = {"7777777", "8888888"};
 x.assign(b, b+2);
 // 
 // error: …
Run Code Online (Sandbox Code Playgroud)

c++ arrays vector char

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

vim:如何检测 .vimrc 中的 stdin 输入?

如何检测 .stdin 输入.vimrc

我的命令中有以下命令~/.vimrc

autocmd BufWinEnter * silent loadview
Run Code Online (Sandbox Code Playgroud)

用光标在最后一行位置打开文件。但是,如果我在 stdin 上使用 vim,则会收到以下错误消息:

Error detected while processing BufWinEnter Autocommands for "*":
E32: No file name
Press ENTER or type command to continue
Run Code Online (Sandbox Code Playgroud)

.vimrc在这种情况下,如何检测在 stdin 上使用 vim来抑制命令的执行?

感谢您的帮助!

vim stdin

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

kdb+/qtickerplant:什么是`timesym?

我正在遵循测试tickerplant和feedhandler设置说明。但是,当我尝试运行时,q tick.q someTable tick_log -p 5555出现以下错误:'timesym上面提到的“C API for kdb+”白皮书中没有任何相关内容。我做了什么:

您能帮我理解该timesym变量的含义以及我应该如何提供它吗?我错过了一些步骤吗?

非常感谢您的帮助!

kdb

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

KDB:加权中位数

如何计算 KDB 中的加权中位数?

我可以看到有一个用于简单中位数的函数med,但我找不到类似于wmedwavg 的函数

非常感谢您的帮助!

median weighted kdb

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

KDB:从内存中删除所有变量

如何删除 KDB/q 内存中当前的所有变量?

而不是像这样手动列出变量(我有很多变量):

delete a,b,c from `.
Run Code Online (Sandbox Code Playgroud)

我想做这样的事情(下面的命令不起作用):

delete (system "v") from `.
{delete x from `.} each system "v"
Run Code Online (Sandbox Code Playgroud)

感谢您的帮助!

memory variables memory-management kdb

0
推荐指数
1
解决办法
389
查看次数