У меня есть диапазон столбцов, имена столбцов которых представляют собой даты, которые увеличиваются на основе сегодняшней даты в течение следующих 30 дней.
В каждый столбец я пытаюсь вставить скользящий список на основе линии команды.
Следующий сценарий дает желаемый результат:
Как показано на рисунке ниже:
Правильный вывод
Это работает нормально, и я получаю желаемое вывод, если я напрямую ссылаюсь на имена столбцов, но поскольку имена этих столбцов меняются каждый день, я хотел ссылаться на них по индексу, а не по имени, поэтому мне не нужно обновлять строку кода каждый день. Вместо этого я попытался ссылаться на них по индексу, используя iLoc, чтобы мне не приходилось менять переменную каждый день, как показано ниже:
Если вышеуказанное можно решить, чтобы я мог вставлять на основе индекса столбца, а не имени столбца, я бы хотел, чтобы сценарий был улучшен, чтобы шаблон повторялся до тех пор, пока столбцов не останется.
p>
Итак, окончательный результат выглядит следующим образом:
Окончательный результат
У меня есть диапазон столбцов, имена столбцов которых представляют собой даты, которые увеличиваются на основе сегодняшней даты в течение следующих 30 дней. В каждый столбец я пытаюсь вставить скользящий список на основе линии команды. Следующий сценарий дает желаемый результат: [code]start_date = date.today() end_date = start_date + timedelta(days=31)
new_column_names = ['colleague', 'team'] + [(start_date + timedelta(days=i)).strftime('%d/%m/%Y') for i in range(len(roster.columns) - 2)]
roster.head(16) [/code] Как показано на рисунке ниже: Правильный вывод Это работает нормально, и я получаю желаемое вывод, если я напрямую ссылаюсь на имена столбцов, но поскольку имена этих столбцов меняются каждый день, я хотел ссылаться на них по индексу, а не по имени, поэтому мне не нужно обновлять строку кода каждый день. Вместо этого я попытался ссылаться на них по индексу, используя iLoc, чтобы мне не приходилось менять переменную каждый день, как показано ниже: [code]columns_to_update = roster.iloc[:, 2:10] row_condition = (roster['team'] == 1) roster.loc[row_condition, columns_to_update] = team1 [/code] но выдает следующую ошибку: [code]KeyError: "None of \[Index(\[('0', '3', '/', '1', '2', '/', '2', '0', '2', '4'),\\n ('0', '4', '/', '1', '2', '/', '2', '0', '2', '4'),\\n ('0', '5', '/', '1', '2', '/', '2', '0', '2', '4'),\\n ('0', '6', '/', '1', '2', '/', '2', '0', '2', '4'),\\n ('0', '7', '/', '1', '2', '/', '2', '0', '2', '4'),\\n ('0', '8', '/', '1', '2', '/', '2', '0', '2', '4'),\\n ('0', '9', '/', '1', '2', '/', '2', '0', '2', '4'),\\n ('1', '0', '/', '1', '2', '/', '2', '0', '2', '4')\],\\n dtype='object')\] are in the \[columns\]" [/code] Затем я попытался переместить соглашение об изменении имени позже в сценарии после операции обновления столбцов, но возникла следующая ошибка [code]TypeError "'int' object is not iterable" [/code] Если вышеуказанное можно решить, чтобы я мог вставлять на основе индекса столбца, а не имени столбца, я бы хотел, чтобы сценарий был улучшен, чтобы шаблон повторялся до тех пор, пока столбцов не останется. p> Итак, окончательный результат выглядит следующим образом: Окончательный результат
Источник проекта-по адресу:
Проблема, которая у меня есть, заключается в том, что мой текущий способ создания и запуска вещей (он работает нормально) требует, чтобы я вручную останавливал все контейнеры и удалил изображение контейнера из Docker...
Я пытаюсь скопировать несколько столбцов в Excel и вставить их в определенные места в других рабочих книгах Excel в корневом каталоге с использованием Python. В некоторых столбцах есть клетки с формулами, а другие нет. Я смог выполнить функцию...
У меня есть одна рабочая книга Excel, содержащая два листа. Sheet2 содержит весь дамп, в то время как Sheet1 имеет формулы, которые приносят определенные данные из листа 2.
Итак, я хочу удалить формулы с листа 1, чтобы я мог делать остальные...