Сдвиг значений столбцов влево в зависимости от значения в них ⇐ Python
Сдвиг значений столбцов влево в зависимости от значения в них
У меня есть бизнес-сценарий, в котором есть столбец id и столбцы value. Существует несколько столбцов value, например value_1, value_2 и т. д.
Идея состоит в том, чтобы сместить значения столбца value влево.
Ввод следующий:
Ввод +------------+-----------+---------+----------+--- ------+---------+---------+ | идентификатор| значение_1| значение_2| значение_3| значение_4| значение_5| значение_6| +------------+-----------+---------+----------+--- ------+---------+---------+ | 1| 1011| 1012| 1011| 2018| ноль| 1011| | 2| ноль| 1012| ноль| 2018| ноль| 2022 | | 7| 1011| 1011| 1016| 2018| ноль| ноль| | 8| 1011| 1012| 1014| 2018| ноль| ноль| +------------+-----------+---------+----------+--- ------+---------+---------+ Следующий шаг — заменить нулевые значения фактическими, сдвинув столбцы влево. Идея состоит в том, что все столбцы с допустимыми значениями должны располагаться слева, а столбцы, имеющие null, должны быть смещены вправо. Промежуточный результат выглядит следующим образом:
Вывод1 +------------+-----------+---------+----------+--- ------+---------+---------+ | идентификатор| значение_1| значение_2| значение_3| значение_4| значение_5| значение_6| +------------+-----------+---------+----------+--- ------+---------+---------+ | 1| 1011| 1012| 1011| 2018| 1011| ноль| | 2| 1012| 2018| 2022 | ноль| ноль| ноль| | 7| 1011| 1011| 1016| 2018| ноль| ноль| | 8| 1011| 1012| 1014| 2018| ноль| ноль| +------------+-----------+---------+----------+--- ------+---------+---------+ Затем необходимо удалить повторяющиеся значения строк и, если возможно, сдвинуть действительные значения дальше влево. Пример вывода выглядит следующим образом:
Вывод2 +------------+-----------+---------+----------+--- ------+---------+---------+ | идентификатор| значение_1| значение_2| значение_3| значение_4| значение_5| значение_6| +------------+-----------+---------+----------+--- ------+---------+---------+ | 1| 1011| 1012| 2018| ноль| ноль| ноль| | 2| 1012| 2018| 2022 | ноль| ноль| ноль| | 7| 1011| 1016| 2018| ноль| ноль| ноль| | 8| 1011| 1012| 1014| 2018| ноль| ноль| +------------+-----------+---------+----------+--- ------+---------+---------+ Любая информация по этому поводу будет полезна. Спасибо.
У меня есть бизнес-сценарий, в котором есть столбец id и столбцы value. Существует несколько столбцов value, например value_1, value_2 и т. д.
Идея состоит в том, чтобы сместить значения столбца value влево.
Ввод следующий:
Ввод +------------+-----------+---------+----------+--- ------+---------+---------+ | идентификатор| значение_1| значение_2| значение_3| значение_4| значение_5| значение_6| +------------+-----------+---------+----------+--- ------+---------+---------+ | 1| 1011| 1012| 1011| 2018| ноль| 1011| | 2| ноль| 1012| ноль| 2018| ноль| 2022 | | 7| 1011| 1011| 1016| 2018| ноль| ноль| | 8| 1011| 1012| 1014| 2018| ноль| ноль| +------------+-----------+---------+----------+--- ------+---------+---------+ Следующий шаг — заменить нулевые значения фактическими, сдвинув столбцы влево. Идея состоит в том, что все столбцы с допустимыми значениями должны располагаться слева, а столбцы, имеющие null, должны быть смещены вправо. Промежуточный результат выглядит следующим образом:
Вывод1 +------------+-----------+---------+----------+--- ------+---------+---------+ | идентификатор| значение_1| значение_2| значение_3| значение_4| значение_5| значение_6| +------------+-----------+---------+----------+--- ------+---------+---------+ | 1| 1011| 1012| 1011| 2018| 1011| ноль| | 2| 1012| 2018| 2022 | ноль| ноль| ноль| | 7| 1011| 1011| 1016| 2018| ноль| ноль| | 8| 1011| 1012| 1014| 2018| ноль| ноль| +------------+-----------+---------+----------+--- ------+---------+---------+ Затем необходимо удалить повторяющиеся значения строк и, если возможно, сдвинуть действительные значения дальше влево. Пример вывода выглядит следующим образом:
Вывод2 +------------+-----------+---------+----------+--- ------+---------+---------+ | идентификатор| значение_1| значение_2| значение_3| значение_4| значение_5| значение_6| +------------+-----------+---------+----------+--- ------+---------+---------+ | 1| 1011| 1012| 2018| ноль| ноль| ноль| | 2| 1012| 2018| 2022 | ноль| ноль| ноль| | 7| 1011| 1016| 2018| ноль| ноль| ноль| | 8| 1011| 1012| 1014| 2018| ноль| ноль| +------------+-----------+---------+----------+--- ------+---------+---------+ Любая информация по этому поводу будет полезна. Спасибо.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как выполнить сдвиг дискретных сигналов влево с помощью операции свертки в Python?
Anonymous » » в форуме Python - 0 Ответы
- 15 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Значения данных Python Сдвиг справа для нескольких столбцов и вставки функции
Anonymous » » в форуме Python - 0 Ответы
- 6 Просмотры
-
Последнее сообщение Anonymous
-