Python pandas заполнение одной таблицы данными из другой
Есть две таблицы, первая заполнена названиями, остальные данные нулевые (или nan, я руками заполняю):
фрукты цена кол-во
0 яблоко 0 0
1 банан 0 0
2 картошка 0 0
3 морковка 0 0
Во второй таблице нужные данные:
фрукты цена кол-во
0 картошка 5 10
1 морковка 3 15
Есть ли возможность заполнить пустые (нулевые) значения в первой таблице, данными из второй не используя циклы, что бы получить в результате такую таблицу?:
фрукты цена кол-во
0 яблоко 0 0
1 банан 0 0
2 картошка 5 10
3 морковка 3 15
Ответы (1 шт):
Автор решения: strawdog
→ Ссылка
Можно, например, так:
import pandas as pd
df1 = pd.DataFrame({"фрукты":["яблоко", "банан", "картошка", "морковка"], "цена":[0,0,0,0], "кол-во":[0,0,0,0]})
df2 = pd.DataFrame({"фрукты":["картошка", "морковка"], "цена":[5,3], "кол-во":[10,15]})
df1 = df1.set_index("фрукты")
df2 = df2.set_index("фрукты")
df1.update(df2)
df1 = df1.reset_index()
df1:
фрукты цена кол-во
0 яблоко 0.0 0.0
1 банан 0.0 0.0
2 картошка 5.0 10.0
3 морковка 3.0 15.0