Python-автоматизация листов Excel - PullRequest
0 голосов
/ 22 октября 2019

Как я могу получить максимальное значение из трех последовательных строк в определенном столбце итеративно в электронной таблице, используя панд Python. Например, сначала я должен взять максимум 0-го ряда во 2-й ряд, затем из 3-го ряда в 5-й ряд

1 Ответ

0 голосов
/ 22 октября 2019

В следующий раз, пожалуйста, обязательно напишите в своем вопросе, что вы сделали, чтобы попытаться найти решение.

Предполагая, что s.csv содержит ваш фрейм данных ... f возвращает столбец с указанным индексом. g возвращает то, что вы хотите - максимум элементов, взятых по 3 за раз сверху вниз в столбце.

        d=pd.read_csv("s.csv")

        >>> d
          a   b  c
      0   6  12  3
      1   2   1  5
      2   7  13  1
      3   4   2  2
      4  23   4  9
      5   4   1  1

        f=lambda j: list(d.iloc[:,j])
        g=lambda col: [max(col[i],col[i+1],col[i+2]) for i in range(0,len(col),3)]
        >>> g(f(0))
          [7, 23]
        >>> g(f(1))
          [13, 4]
        >>> g(f(2))
          [5, 9]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...