Python 列:应用函数

Python 列:应用函数,python,pandas,apply,axis,Python,Pandas,Apply,Axis,我有一个熊猫数据帧df df: GROUP VALUE 1 5 2 2 1 10 2 20 1 7 我试图在其中一列上应用以下函数 import pandas as pd from statsmodels import robust import numpy as np def madout(x): mad = robust.mad(x) median = np.median(x) mad_s = (abs(x -

我有一个熊猫数据帧df

df:

GROUP VALUE
 1     5
 2     2
 1     10
 2     20
 1     7
我试图在其中一列上应用以下函数

import pandas as pd
from statsmodels import robust
import numpy as np

def madout(x):
    mad = robust.mad(x)
    median = np.median(x)
    mad_s = (abs(x - median / mad))
    return mad_s

df.VALUE.apply(madout)
尽管我多次尝试,但还是收到了一个错误

AxisError:轴0超出维度为0的数组的界限。
请帮助
apply
将把函数应用于列
df.VALUE
的每个元素

我想你要找的是:

In [8]: madout(df.VALUE)
Out[8]: 
0     3.426191
1     0.426191
2     8.426191
3    18.426191
4     5.426191
Name: VALUE, dtype: float64

哪一行抛出了这个错误?