露从今夜白,月是故乡明。

大家好,我是皮皮。

一、前言

前几天在Python最强王者交流群【冫马讠成】问了一道Pandas处理的问题,如下图所示。


Pandas中求某一列中每个列表的平均值_深度学习

原始数据如下:

df = pd.DataFrame({
    'student_id': ['S001','S002','S003'],
    'marks': [[88,89,90],[78,81,60],[84,83,91]]})
df

预期的结果如下图所示:


Pandas中求某一列中每个列表的平均值_人工智能_02

二、实现过程

方法一

这里【瑜亮老师】给出一个可行的代码,大家后面遇到了,可以对应的修改下,事半功倍,代码如下所示:

df['dmean'] = df['marks'].map(lambda x: np.mean(x))

运行之后,结果就是想要的了。


Pandas中求某一列中每个列表的平均值_人工智能_03

方法二

后来【瑜亮老师】又给了一份优化后的代码如下所示:

df['dmean'] = df['marks'].map(np.mean)
或者
df['dmean'] = df['marks'].apply(np.mean)

运行之后,结果就是想要的了。


Pandas中求某一列中每个列表的平均值_机器学习_04

完美的解决了粉丝的问题!


Pandas中求某一列中每个列表的平均值_python_05

三、总结

大家好,我是皮皮。