简化 Pandas 函数,不要每次都创建新的 Dataframe

问题描述

我创建了一个具有许多功能代码。 为了简单起见,我选择在每个函数中创建一个新数据集。

例如。我的数据集有 5 列(id、区域、练习、影响级别、级别)。在这函数中,我试图找出并绘制出最有影响力的前 10% 运动,而不管区域如何。

# Define MIERoA (Most Impactful Exercises Regardless of Area)

def MIERoA(Data):
    # Create Dataset Using Only Exercise and Level Chategories
    RoA_data = Data[['exercise','impact level']]

    # Compute Mean Impact Level per Exercise
    mean_il_RoA = RoA_data.groupby(['exercise'])['impact level'].mean().reset_index()

    # Sort + Get Largest 10%
    mean_il_RoA = mean_il_RoA.sort_values(by=['impact level'],ascending=False).head(int(mean_il_RoA.shape[0]*.1))

    # Plot
    ax = sns.barplot(x="impact level",y="exercise",data=mean_il_RoA)
    plt.title('Most Impactful Exercises Regardless of Area - Top 10%')
    plt.show()

有没有更聪明的方法解决这个问题而不为每个函数创建一个新的数据集?

我所有的函数都包含绘图。有没有办法不在每个函数中重复 plt.show() ? (上下文:函数被插入到 while/if 菜单循环中)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)