Pandas数据帧列每行平均值

时间:2015-08-17 21:30:39

标签: python pandas

我在pandas数据框中有一个名为' X'包含一系列数字;

pd.head()
Row_ID    X
1        [10,20]
2        [13]
3        [30,40]

我想取每行每个数组的均值并将其替换为' X';

Row_ID    X
1        [15]
2        [13]
3        [35]

我怎样才能在Python中执行此操作?

2 个答案:

答案 0 :(得分:2)

假设您需要标量值而不是列表或数组,则可以执行以下操作:

df['X'] = [np.mean(x) for x in df.X]

>>> df
df
    X
0  15
1  13
2  35

答案 1 :(得分:1)

df['X'] = df.apply(lambda row: [[pd.np.mean(row['X'])]], axis=1)

>>> df
        X
0  [15.0]
1  [13.0]
2  [35.0]