我可以在Pandas中将getattr与方法链接一起使用吗?

时间:2019-06-20 22:39:51

标签: python pandas method-chaining

我希望在两个单独的变量中捕获系列的滚动平均值和滚动标准偏差。我希望将代码简化为一个函数,并动态传递所需的属性(mean()或std()),但我无法使其与滚动属性一起使用。

我自己已经过getattr,已经尝试了basic_utils包中的rgetattr,并且已经尝试了pipe方法。它们都返回错误。

理想情况下,我会使用类似这样的内容:

int partitioning(int A[10], int p, int r);
void quick_sort(int A[10], int p, int r);

int main() {

    int A[10] = { 8, 7, 0, 20, 60, 5, 3, 7, 45, 1}, i;

    for (i = 0; i <= 9; i++) {
        printf(" %d ", A[i]);
    }
    printf("\n\nFinal Array\n\n");
    quick_sort(A, 0, 9);
    for (i = 0; i <= 9; i++) {
        printf(" %d ", A[i]);
    }

    return 0;
}

int partitioning(int A[10], int p, int r) {

    int tmp, i, x, j;
    x = A[r];
    i = p - 1;
    for (j = p; j <= r; j++) {
        if (A[j] < x) {
            i++;
            tmp = A[i];
            A[i] = A[j];
            A[j] = tmp;
        }
    }
    i++;
    tmp = A[i];
    A[i] = A[r];
    A[r] = tmp;

    return i;
}

void quick_sort(int A[10], int p, int r) {
    int q;
    printf("%d\n", q);

    if (p < r) {
        q = partitioning(A, p, r);
        quick_sort(A, p, q - 1);
        quick_sort(A, q + 1, r);
    }
}

调用该特定函数将返回错误: func = getattr(pandas.DataFrame, type) return series.rolling(period).func()

如果我尝试这样的事情

AttributeError: 'Rolling' object has no attribute 'func'

我明白了 func = getattr(pandas.DataFrame, type) return func(series.rolling(period))

我可以通过使用单独的函数来解决问题,但是重复的过程困扰着我。预先感谢任何人都可以提供的帮助。

0 个答案:

没有答案