Python Pandas Excel нужна помощь

Alexxxandr

Новичок
Пользователь
Сен 11, 2022
36
0
6
Здравствуйте! Нужно сравнить 2 таблицы Excel. В каждой из них есть колонка с фамилиями и соответствующие им объемы топлива. Нужно сравнить их, и там, где отдельно взятой фамилии в разных таблицах соответствует разное кол-во объема топлива подкрасить ячейку с объемом в красный цвет. Фамилии могут быть не по порядку и кол-во фамилий в 2-х таблицах может быть разным. Если в одной таблице количество фамилий больше либо равно, чем в другой, то "красить" ячейки с "Количеством" в бОльшей таблице. При этом нужно подкрасить ячейки с фамилиями, которых нет в меньшей таблице.
Как я понимаю, то код должен начинаться так:
import pandas as pd

df1 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость заправочная", index_col=0)
df2 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость организации", index_col=0)
len(df1)
len(df2)
while len(df1)>=len(df2)
Только начинаю разбираться. Получилось написать короткий код через Pandas, но для этого мне пришлось преобразовывать сами таблицы, удаляя все колонки в каждой из таблиц, кроме 2-х : на листе "Ведомость заправочная" - "VIN" и "Количество", на листе "Ведомость организации" - "Водитель " и "Количество". Собственно сам код:
import pandas as pd

df1 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость заправочная", index_col=0)
df2 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость организации", index_col=0)

diff = df1 - df2
print(diff)
diff.to_excel("Samp.xlsx", sheet_name="Sheet3")

Надеюсь на Вашу помощь!
 

Вложения

  • Сверка топлива пробы.zip
    16 КБ · Просмотры: 6
Последнее редактирование:

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
ну как то так, в dct_result фамилии которые не совпадают по значению топлива, с раскрасками сами сделайте, не стал разбираться
Python:
import pandas as pd

df1 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость заправочная", index_col=0)
df2 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость организации", index_col=0)


dct_df1 = {}
dct_df2 = {}

for name, value in zip(df1["Unnamed: 1"], df1["Unnamed: 5"]):
    if "nan" in str(name) or "VIN" in str(name):
        continue
    try:
        dct_df1[name] += -value
    except KeyError:
        dct_df1[name] = -value

for name, value in zip(df2["Водитель"], df2["Количество"]):
    if "nan" in str(name):
        continue
    try:
        dct_df2[name] += value
    except KeyError:
        dct_df2[name] = value


dct_result = {}
if len(dct_df1) > len(dct_df2):
    for name, value in dct_df2.items():
        if name in dct_df1:
            if value != dct_df1[name]:
                dct_result[name] = value
else:
    for name, value in dct_df1.items():
        if name in dct_df2:
            if value != dct_df2[name]:
                dct_result[name] = value

print(dct_result)
 
  • Мне нравится
Реакции: Alexxxandr

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
ну как то так, все прокомментировал, вроде работает, только индексы сбросить нужно было, ну и сильно не тестил

Python:
import pandas as pd  # импортируем модуль pandas

# читаем две таблицы в два датафрейма
df1 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость заправочная", index_col=0)
s1 = df1
df2 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость организации", index_col=0)
s2 = df2

# создем два словаря для данных из таблиц (ключ - фамилия, значение - топливо)
dct_df1 = {}
dct_df2 = {}

# проходим по двум столбцам из первой таблицы Unnamed: 1 и Unnamed: 5
# (на самом деле это фамилия и топливо соответственно, просто в первой таблице имена столбцов не указаны)
for name, value in zip(df1["Unnamed: 1"], df1["Unnamed: 5"]):
    if "nan" in str(name) or "VIN" in str(name):  # если имя nan или VIN
        continue  # прерываем текущую итерацию цикла фор
    try:
        dct_df1[name] += -value  # прибавляем к элементу с ключом name (фамилия) значение value (топливо)
                                 # -value, потому что в таблице отрицательные значения
    except KeyError:  # если ошибка KeyError (нет такого ключа)
        dct_df1[name] = -value  # то просто добавялем новый элемент с ключом name (фамилия) и значением value (топливо)

# делаем аналогичную операцию со второй таблицей
for name, value in zip(df2["Водитель"], df2["Количество"]):
    if "nan" in str(name):
        continue
    try:
        dct_df2[name] += value
    except KeyError:
        dct_df2[name] = value


def color(col):
    return f"background-color: {col}"


dct_result = {}  # словарь для результата
# далее по сути сравниваем две таблицы
if len(dct_df1) > len(dct_df2):  # если первая таблица больше чем вторая
    for name, value in dct_df2.items():  # пробегаем по словарю из второй таблицы (фамилии и топливо)
        if name in dct_df1:  # если фамилия есть в словаре из первой таблицы
            if value != dct_df1[name]:  # и если топливо не совпадает в двух таблицах
                dct_result[name] = value  # добавляем в словарь результата
                count = 0  # счетчик для закраски строки
                for i in df2["Водитель"]:  # пробегаем датафрейм
                    if i == name:  # если текущий элемент равен имени, которое не совпадает по топливу
                        s2 = df2.reset_index().style.applymap(lambda x: color("red"), subset=count)  # красим в красный
                    count += 1
else:  # иначе делаем тоже самое, но пробегаем первый словарь и сравниваем со вторым
    for name, value in dct_df1.items():
        if name in dct_df2:
            if value != dct_df2[name]:
                dct_result[name] = value
                count = 0
                for i in df1["Unnamed: 1"]:
                    if i == name:
                        s1 = df1.reset_index().style.applymap(lambda x: color("red"), subset=count)
                    count += 1

print(dct_result)

# Записываем новые датафреймы
with pd.ExcelWriter("Сверка топлива пробы.xlsx") as writer:
    s1.to_excel(writer, sheet_name="Ведомость заправочная")
    s2.to_excel(writer, sheet_name="Ведомость организации")
 
  • Мне нравится
Реакции: Alexxxandr

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
Подскажите плиз... Не понимаю, зачем нужен счетчик count?
чтобы знать какую строку закрашивать
 
  • Мне нравится
Реакции: Alexxxandr

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
Python:
import pandas as pd  # импортируем модуль pandas

# читаем две таблицы в два датафрейма
df1 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость заправочная", index_col=0)
s1 = df1
df2 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость организации", index_col=0)
s2 = df2

# создем два словаря для данных из таблиц (ключ - фамилия, значение - топливо)
dct_df1 = {}
dct_df2 = {}

# проходим по двум столбцам из первой таблицы Unnamed: 1 и Unnamed: 5
# (на самом деле это фамилия и топливо соответственно, просто в первой таблице имена столбцов не указаны)
for name, value in zip(df1["Unnamed: 1"], df1["Unnamed: 5"]):
    if "nan" in str(name) or "VIN" in str(name):  # если имя nan или VIN
        continue  # прерываем текущую итерацию цикла фор
    try:
        dct_df1[name] += -value  # прибавляем к элементу с ключом name (фамилия) значение value (топливо)
                                 # -value, потому что в таблице отрицательные значения
    except KeyError:  # если ошибка KeyError (нет такого ключа)
        dct_df1[name] = -value  # то просто добавялем новый элемент с ключом name (фамилия) и значением value (топливо)

# делаем аналогичную операцию со второй таблицей
for name, value in zip(df2["Водитель"], df2["Количество"]):
    if "nan" in str(name):
        continue
    try:
        dct_df2[name] += value
    except KeyError:
        dct_df2[name] = value


def color(col):
    return f"background-color: {col}"


dct_result = {}  # словарь для результата, если одинаковым именам не соответствует значение
dct_result1 = {} # словарь для результата, если имени нет в первой таблице
dct_result2 = {} # словарь для результата, если имени нет во второй таблице
# далее по сути сравниваем две таблицы
if len(dct_df1) > len(dct_df2):  # если первая таблица больше чем вторая
    for name, value in dct_df2.items():  # пробегаем по словарю из второй таблицы (фамилии и топливо)
        if name in dct_df1:  # если фамилия есть в словаре из первой таблицы
            if value != dct_df1[name]:  # и если топливо не совпадает в двух таблицах
                dct_result[name] = value  # добавляем в словарь результата
                count = 0  # счетчик для закраски строки
                for i in df2["Водитель"]:  # пробегаем датафрейм
                    if i == name:  # если текущий элемент равен имени, которое не совпадает по топливу
                        s2 = df2.reset_index().style.applymap(lambda x: color("red"), subset=count)  # красим в красный
                    count += 1
        else:
            dct_result1[name] = value
            count = 0
            for i in df2["Водитель"]:
                if i == name:
                    s2 = df2.reset_index().style.applymap(lambda x: color("yellow"), subset=count)
                count += 1

else:  # иначе делаем тоже самое, но пробегаем первый словарь и сравниваем со вторым
    for name, value in dct_df1.items():
        if name in dct_df2:
            if value != dct_df2[name]:
                dct_result[name] = value
                count = 0
                for i in df1["Unnamed: 1"]:
                    if i == name:
                        s1 = df1.reset_index().style.applymap(lambda x: color("red"), subset=count)
                    count += 1
        else:
            dct_result2[name] = value
            count = 0
            for i in df1["Unnamed: 1"]:
                if i == name:
                    s1 = df1.reset_index().style.applymap(lambda x: color("yellow"), subset=count)
                count += 1

print("Фамилии совпадают в 2-х таблицах, но несовпадение по топливу:", dct_result)
print("Такие фамилии отсутствуют в первой таблице:", dct_result1)
print("Такие фамилии отсутствуют во второй таблице:", dct_result2)
# Записываем новые датафреймы
with pd.ExcelWriter("Сверка топлива пробы.xlsx") as writer:
    s1.to_excel(writer, sheet_name="Ведомость заправочная")
    s2.to_excel(writer, sheet_name="Ведомость организации")

Снова прошу Вашей помощи... Немного переписал код, добавив в каждый цикл for условие, что если пробегая по словарю dct_df2 или dct_df1, мы не находим фамилию (name), совпадающую в 2-х словарях, строчка при этом красится в желтый цвет.
Я так понимаю, что датафреймы каждый раз перезаписываются, поэтому теряются предыдущие подсчеты (раскраски). Как сделать, чтобы предыдущие раскраски оставались, а к ним добавлялись новые?
ну как то так
Python:
import pandas as pd  # импортируем модуль pandas

# читаем две таблицы в два датафрейма
df1 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость заправочная", index_col=0)
s1 = df1
df2 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость организации", index_col=0)
s2 = df2

# создем два словаря для данных из таблиц (ключ - фамилия, значение - топливо)
dct_df1 = {}
dct_df2 = {}

# проходим по двум столбцам из первой таблицы Unnamed: 1 и Unnamed: 5
# (на самом деле это фамилия и топливо соответственно, просто в первой таблице имена столбцов не указаны)
for name, value in zip(df1["Unnamed: 1"], df1["Unnamed: 5"]):
    if "nan" in str(name) or "VIN" in str(name):  # если имя nan или VIN
        continue  # прерываем текущую итерацию цикла фор
    try:
        dct_df1[name] += -value  # прибавляем к элементу с ключом name (фамилия) значение value (топливо)
                                 # -value, потому что в таблице отрицательные значения
    except KeyError:  # если ошибка KeyError (нет такого ключа)
        dct_df1[name] = -value  # то просто добавялем новый элемент с ключом name (фамилия) и значением value (топливо)

# делаем аналогичную операцию со второй таблицей
for name, value in zip(df2["Водитель"], df2["Количество"]):
    if "nan" in str(name):
        continue
    try:
        dct_df2[name] += value
    except KeyError:
        dct_df2[name] = value


def color(col):
    return f"background-color: {col}"


dct_result = {}  # словарь для результата, если одинаковым именам не соответствует значение
dct_result1 = {} # словарь для результата, если имени нет в первой таблице
dct_result2 = {} # словарь для результата, если имени нет во второй таблице
lst_red = []    #
lst_yellow = [] # списки для закраски ячеек
# далее по сути сравниваем две таблицы
if len(dct_df1) > len(dct_df2):  # если первая таблица больше чем вторая
    for name, value in dct_df2.items():  # пробегаем по словарю из второй таблицы (фамилии и топливо)
        if name in dct_df1:  # если фамилия есть в словаре из первой таблицы
            if value != dct_df1[name]:  # и если топливо не совпадает в двух таблицах
                dct_result[name] = value  # добавляем в словарь результата
                for i in df2["Водитель"]:  # пробегаем датафрейм
                    if i == name:  # если текущий элемент равен имени, которое не совпадает по топливу
                        lst_red.append(name)
        else:
            dct_result1[name] = value
            for i in df2["Водитель"]:
                if i == name:
                    lst_yellow.append(name)

else:  # иначе делаем тоже самое, но пробегаем первый словарь и сравниваем со вторым
    for name, value in dct_df1.items():
        if name in dct_df2:
            if value != dct_df2[name]:
                dct_result[name] = value
                for i in df1["Unnamed: 1"]:
                    if i == name:
                        lst_red.append(name)
        else:
            dct_result2[name] = value
            for i in df1["Unnamed: 1"]:
                if i == name:
                    lst_yellow.append(name)

# красим ячейки
s1 = df1.reset_index().style.applymap(lambda x: color("red") if x in lst_red else None).applymap(lambda x: color("yellow") if x in lst_yellow else None)
print("Фамилии совпадают в 2-х таблицах, но несовпадение по топливу:", dct_result)
print("Такие фамилии отсутствуют в первой таблице:", dct_result1)
print("Такие фамилии отсутствуют во второй таблице:", dct_result2)
# Записываем новые датафреймы
with pd.ExcelWriter("Сверка топлива пробы.xlsx") as writer:
    s1.to_excel(writer, sheet_name="Ведомость заправочная")
    s2.to_excel(writer, sheet_name="Ведомость организации")
 
  • Мне нравится
Реакции: Alexxxandr

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
Через макросы VBA? Честно хочется в Python)) Дайте плз какое-нибудь напутствие. Тем более, если я в питоне почти 0, то в вба - минус. Использовать цикл for и в каждой итерации делать if для даты?
суммы со страницы два по дням, математические операции осталось добавить и записать на лист один
Python:
import pandas as pd

dct = {}

file = "К-во конт-кубов.xlsx"
df = pd.read_excel(file, sheet_name=["Лист1", "Лист2"])
date = df["Лист2"]["Дата"]
capacity = df["Лист2"]["Объем"]

# Делаем словарь, ключ - дата, значение - сумма (индексы элементов в capacity)
for i in date:
    dct[i] = [index for index, value in enumerate(date) if value == i]

# # Суммируем суммы по дням
res = 0
for i in dct:
    for j in dct[i]:
        res += capacity[j]
    dct[i] = res
    res = 0

print(dct)
 
  • Мне нравится
Реакции: Alexxxandr

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
Голову поломал, как у Вас сразу получилось посчитать в первом листе колонку 5, не считая колонки 8м3, 10м3, 12м3(2,3,4 колонки соответственно)? Формула ячейки в 5-й колонке(2 строка, 5 колонка) это: (значение ячейки 2,2 *8м3)+(значение ячейки 2,3 *10м3)+(значение ячейки 2,4 * 12м3)=588м3. Или Вы просто взяли сумму по дням из строки "Всего"?
я же сказал что ничего не считал, в цикл фор добавляете свои вычисления, у вас получиться словарь по дням с вашими данными

date - это переменная по дате из созданного датафрейма, capacity - переменная по объему из датафрейма?
да

Но дальше....просто вообще ничего не понял((((
Если будет время, помогите разобраться пожалуйста.
дальше идет цикл фор, который просто суммирует все данные из столбца объем по дням, тут вам нужно добавить свои деления, и будет готовый словарь, который можно писать в лист1, если я правильно понял задачу, конечно...
 
  • Мне нравится
Реакции: Alexxxandr

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
а что вы делаете в вашем коде?

я бы сделал так
нужно сделать, чтобы таблицы были одинаковы по столбцу фамилии, то есть отсортированы и выровнены по количеству, и далее циклом фор пробегаете значения и сравниваете...
либо брать все фамилии по очереди из одной таблицы и искать ее в другой, и так же сравнивать значения, это будет дольше, но зато не нужно ничего выравнивать и сортировать...
 
  • Мне нравится
Реакции: Alexxxandr

Alexxxandr

Новичок
Пользователь
Сен 11, 2022
36
0
6
а что вы делаете в вашем коде?

я бы сделал так
нужно сделать, чтобы таблицы были одинаковы по столбцу фамилии, то есть отсортированы и выровнены по количеству, и далее циклом фор пробегаете значения и сравниваете...
либо брать все фамилии по очереди из одной таблицы и искать ее в другой, и так же сравнивать значения, это будет дольше, но зато не нужно ничего выравнивать и сортировать...
Я хотел бы чтобы мне помогли со вторым вариантом (либо брать все фамилии по очереди из одной таблицы и искать ее в другой, и так же сравнивать значения, это будет дольше, но зато не нужно ничего выравнивать и сортировать)
Помогите пожалуйста, логику понимаю, но с написанием проблема.
 

Alexxxandr

Новичок
Пользователь
Сен 11, 2022
36
0
6
Спасибо большое за код! Как новичку, мне сложновато дается. Не могли бы Вы вставить комментарии, если будет время?
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
Спасибо большое за код! Как новичку, мне сложновато дается. Не могли бы Вы вставить комментарии, если будет время?
Python:
import pandas as pd  # импортируем модуль pandas

# читаем две таблицы в два датафрейма
df1 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость заправочная", index_col=0)
df2 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость организации", index_col=0)

# создем два словаря для данных из таблиц (ключ - фамилия, значение - топливо)
dct_df1 = {}
dct_df2 = {}

# проходим по двум столбцам из первой таблицы Unnamed: 1 и Unnamed: 5
# (на самом деле это фамилия и топливо соответственно, просто в первой таблице имена столбцов не указаны)
for name, value in zip(df1["Unnamed: 1"], df1["Unnamed: 5"]):
    if "nan" in str(name) or "VIN" in str(name):  # если имя nan или VIN
        continue  # прерываем текущую итерацию цикла фор
    try:
        dct_df1[name] += -value  # прибавляем к элементу с ключом name (фамилия) значение value (топливо)
                                 # -value, потому что в таблице отрицательные значения
    except KeyError:  # если ошибка KeyError (нет такого ключа)
        dct_df1[name] = -value  # то просто добавялем новый элемент с ключом name (фамилия) и значением value (топливо)

# делаем аналогичную операцию со второй таблицей
for name, value in zip(df2["Водитель"], df2["Количество"]):
    if "nan" in str(name):
        continue
    try:
        dct_df2[name] += value
    except KeyError:
        dct_df2[name] = value


dct_result = {}  # словарь для результата
# далее по сути сравниваем две таблицы
if len(dct_df1) > len(dct_df2):  # если первая таблица больше чем вторая
    for name, value in dct_df2.items():  # пробегаем по словарю из второй таблицы (фамилии и топливо)
        if name in dct_df1:  # если фамилия есть в словаре из первой таблицы
            if value != dct_df1[name]:  # и если топливо не совпадает в двух таблицах
                dct_result[name] = value  # добавляем в словарь результата
else:  # иначе делаем тоже самое, но пробегаем первый словарь и сравниваем со вторым
    for name, value in dct_df1.items():
        if name in dct_df2:
            if value != dct_df2[name]:
                dct_result[name] = value

print(dct_result)
 
  • Мне нравится
Реакции: Alexxxandr

Alexxxandr

Новичок
Пользователь
Сен 11, 2022
36
0
6
Огромнейшее спасибо!!
 

Alexxxandr

Новичок
Пользователь
Сен 11, 2022
36
0
6
Немного подправил код (убрал условие len и добавил в условия несовпадение отдельных фамилий в разных таблицах). Но вот с "раскраской" вообще проблема. Не пойму, как подкрасить результаты из словарей в нужный цвет, так, чтобы эти ячейки подкрасились в исходных дата фреймах, а потом и исходном эксель файле.
Так понимаю, что нужно проходить циклом for по полученным словарям и если ключ и значение есть в словаре, то каким то образом это передавать в дата фрейм (поправьте меня пожалуйста).
Python:
import pandas as pd

df1 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость заправочная", index_col=0)
df2 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость организации", index_col=0)


dct_df1 = {}
dct_df2 = {}

for name, value in zip(df1["Unnamed: 1"], df1["Unnamed: 5"]):
    if "nan" in str(name) or "VIN" in str(name):
        continue
    try:
        dct_df1[name] += -value
    except KeyError:
        dct_df1[name] = -value

for name, value in zip(df2["Водитель"], df2["Количество"]):
    if "nan" in str(name):
        continue
    try:
        dct_df2[name] += value
    except KeyError:
        dct_df2[name] = value



dct_result = {}
dct_result1 = {}
dct_result2 = {}

for name, value in dct_df2.items():
    if name in dct_df1:
        if value != dct_df1[name]:
                dct_result[name] = value
    else:
        dct_result1[name] = value

for name, value in dct_df1.items():
    if name in dct_df2:
        if value != dct_df2[name]:
                dct_result[name] = value
    else:
        dct_result2[name] = value

print("dct_result:", dct_result)
print("dct_result1:", dct_result1)
print("dct_result2:", dct_result2)
 

Вложения

  • Сверка топлива пробы.zip
    16 КБ · Просмотры: 1
Последнее редактирование:

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
Немного подправил код (убрал условие len и добавил в условия несовпадение отдельных фамилий в разных таблицах). Но вот с "раскраской" вообще проблема. Не пойму, как подкрасить результаты из словарей в нужный цвет, так, чтобы эти ячейки подкрасились в исходных дата фреймах, а потом и исходном эксель файле.
Так понимаю, что нужно проходить циклом for по полученным словарям и если ключ и значение есть в словаре, то каким то образом это передавать в дата фрейм (поправьте меня пожалуйста).
Python:
import pandas as pd

df1 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость заправочная", index_col=0)
df2 = pd.read_excel("Сверка топлива пробы.xlsx", "Ведомость организации", index_col=0)


dct_df1 = {}
dct_df2 = {}

for name, value in zip(df1["Unnamed: 1"], df1["Unnamed: 5"]):
    if "nan" in str(name) or "VIN" in str(name):
        continue
    try:
        dct_df1[name] += -value
    except KeyError:
        dct_df1[name] = -value

for name, value in zip(df2["Водитель"], df2["Количество"]):
    if "nan" in str(name):
        continue
    try:
        dct_df2[name] += value
    except KeyError:
        dct_df2[name] = value



dct_result = {}
dct_result1 = {}
dct_result2 = {}

for name, value in dct_df2.items():
    if name in dct_df1:
        if value != dct_df1[name]:
                dct_result[name] = value
    else:
        dct_result1[name] = value

for name, value in dct_df1.items():
    if name in dct_df2:
        if value != dct_df2[name]:
                dct_result[name] = value
    else:
        dct_result2[name] = value

print("dct_result:", dct_result)
print("dct_result1:", dct_result1)
print("dct_result2:", dct_result2)
вам нужно делать новый датафрейм, и там красить ячейки, наверное
я такое не делал, у меня нет времени разбираться и заниматься этим, простите
 
  • Мне нравится
Реакции: Alexxxandr

Alexxxandr

Новичок
Пользователь
Сен 11, 2022
36
0
6
Все равно Вам большое спасибо! Вопрос остается открытым, может кто-нить поможет.
 

Alexxxandr

Новичок
Пользователь
Сен 11, 2022
36
0
6
Help!
 

Alexxxandr

Новичок
Пользователь
Сен 11, 2022
36
0
6
И снова Вам огромнейшее СПАСИБО! Честно говоря, перелопатил кучу всего, но не победил. Самоучка и есть самоучка. еще раз спасибо, буду разбираться.
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
Самоучка и есть самоучка
так я тоже самоучка, и питон не основной мой язык на данный момент
 
  • Мне нравится
Реакции: Alexxxandr

Дарья_46666r

Новичок
Пользователь
Окт 25, 2022
2
0
1
Нудна помощь!!!! Пайтон
Здание: Дан массив из N чисел. Указать наименьшую длину числовой оси, содержащую все эти числа.

 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 661
474
83
Нудна помощь!!!! Пайтон
Здание: Дан массив из N чисел. Указать наименьшую длину числовой оси, содержащую все эти числа.
я вам ответил в вашей теме, не нужно спамить
 
  • Мне нравится
Реакции: Alexxxandr

Alexxxandr

Новичок
Пользователь
Сен 11, 2022
36
0
6
Подскажите плиз... Не понимаю, зачем нужен счетчик count?
 

Форум IT Специалистов