如何计算逗号列上的值的平均值?

How to calculate mean value of values on column which go comma?

我有一个数据框:

id   value
a1   1,2
b2   4
c1   NaN
c5   9,10,11

我想创建一个新列 mean_value,它等于列值中的平均值:

id   value     mean_value
a1   1,2          1.5
b2   4            4
c5   9,10,11      10

而且我还想删除其中 NaN 中的那些值。怎么做?

这是使用 str.splitmean 的一种方法:

df = df.assign(mean_value=df['value'].str.split(',', expand=True).astype(float)
               .mean(axis=1)).dropna()

输出:

   id    value  mean_value
0  a1      1,2         1.5
1  b2        4         4.0
3  c5  9,10,11        10.0