王jx5858 2021-08-15 22:28 采纳率: 80%
浏览 98
已结题

怎么求出部分列里最近200行和值不为0的最小值并返回对应的列名

计算m10到m500最近200行和值
img

img

img

要求是不为0的最小值返回输出列名
麻烦解决下

  • 写回答

5条回答 默认 最新

  • CSDN专家-HGJ 2021-08-16 00:41
    关注

    题主的问题描述不够清晰,可能想表达的意思是连续200行中一旦出现某列和值为0时,找出这些列的和值,并打印出和值为0的那一列名。
    如果是这样问题的话,下面写一段代码基本能实现这个需求::

    import pandas as pd 
    df=pd.read_csv('cs.csv')
    df=df.iloc[:,7:]
    print(df.head())
    for i in range(len(df)-200):
        df1=df.iloc[i:200+i,:]
        sums=df1.apply(sum,axis=0)
        if any(sums==0):
            print(sums)
            ind=sums[sums.values==0].index.tolist()
            if len(ind)==1:
                print(ind[0])
            else:
                print(ind)        
    

    根据题主要求,补充代码如下,供参考:

    import pandas as pd 
    df=pd.read_csv('cs.csv')
    df1=df.iloc[-200:,7:]
    v=min([x for x in df1.apply(sum,axis=0) if x!=0])
    for ind in df1.columns:
        if df1[ind].sum()==v:
            print(ind)
    #output:m180
    

    如对你有帮助,可点击本回答的右上方采纳按钮给予采纳。

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

报告相同问题?

问题事件

  • 系统已结题 8月24日
  • 已采纳回答 8月16日
  • 赞助了问题酬金 8月15日
  • 创建了问题 8月15日

悬赏问题

  • ¥15 pnpm 下载element-plus
  • ¥15 解决编写PyDracula时遇到的问题
  • ¥15 有没有人能解决下这个问题吗,本人不会编程
  • ¥15 plotBAPC画图出错
  • ¥30 关于#opencv#的问题:使用大疆无人机拍摄水稻田间图像,拼接成tif图片,用什么方法可以识别并框选出水稻作物行
  • ¥15 Python卡尔曼滤波融合
  • ¥20 iOS绕地区网络检测
  • ¥15 python验证码滑块图像识别
  • ¥15 根据背景及设计要求撰写设计报告
  • ¥20 能提供一下思路或者代码吗