Clarence733 2021-12-08 19:30 采纳率: 85.7%
浏览 23
已结题

请问我使用pandas处理文本文件去除最高分最低分和排序的操作,这种排序的操作和去除操作为什么实现不了(pycharm)

import pandas as pd
fp=pd.read_csv('score2.txt')
f1=fp.drop(fp.columns[[0]],axis=1)
f1['person1'].sort_values()  
f1['person2'].sort_values()
f1['person3'].sort_values()
f1.drop(index=0)
f1.drop(index=9)_
y_T= pd.DataFrame(f1.values.T,columns=f1.index,index=f1.columns)
y_T.loc[:,'平均分']=y_T.sum(axis=1)/8
a=y_T.loc[:,'平均分'].max()
b=y_T['平均分'].idxmax()
print(a)
print(b)


![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/080299269836168.jpg "#left")
  • 写回答

2条回答 默认 最新

  • 陈年椰子 2021-12-08 22:40
    关注

    是这个问题吗?

    
     
    import pandas as pd
    data_str = '''person1 76 70 80 85 60 95 40 95 85 95 78.1
    person2 85 84 85 85 84 83 74 84 84 84 83.2
    person3 81 81 90 80 84 80 92 80 81 83 83.2'''
    def avg_score_func(x):
        score_list = [int(x[i]) for i in range(1,11)]
        score_list.sort()
        return sum(score_list[1:-1])/8
     
    data=[d.split(" ") for d in data_str.split("\n")]
    df1 = pd.DataFrame(data)
    df1['avg'] = df1.apply(lambda x: avg_score_func(x), axis=1)
    print(df1.head())
    print(df1[[0,'avg']].head())
    

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月27日
  • 已采纳回答 12月19日
  • 创建了问题 12月8日

悬赏问题

  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等
  • ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
  • ¥15 qt6.6.3 基于百度云的语音识别 不会改
  • ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单
  • ¥15 神经网络怎么把隐含层变量融合到损失函数中?
  • ¥15 lingo18勾选global solver求解使用的算法
  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行
  • ¥20 测距传感器数据手册i2c