wolverine777
@wolverine777

Почему не получается заменить нулевые значения в датафрейме?

Привет, у меня есть два датафрейма

import pandas as pd
import numpy as np

ma = [[2.0, 111], 
         [3.0, 222], 
         [4.0, 555], 
         [5.0, 888], 
         [6.0, 777]]
data2 = [[0, 2.0],
         [0, 3.0],
         [0, 4.0],
         [0, 5.0],
         [0, 6.0]]
columns1 = ['number', 'value']
columns2 = ['value', 'number']

ma = pd.DataFrame(np.array(ma), columns=columns1)
df2 = pd.DataFrame(np.array(data2), columns=columns2)


Теперь мне нужно в df2 заполнить в первой колонке все нулевые значения соответствующими значениями из датафрейма ma.

Я сначала сделал вот такую функцию:

def nomer(x):
    return ma.iloc[x-2]


и далее пытаюсь заполнить df2
примерно как-то так:

for i in df2['number']:
    df2.iloc[i]['value']=nomer(i)


однако не пойму как слелать так чтобы была итерация ячеек для колонки с нулями... пишет Cannot index by location index with a non-integer key

Спасибо!
  • Вопрос задан
  • 50 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
deeplay Новосибирск
от 130 000 ₽
от 130 000 ₽
Enjoy PRO Санкт-Петербург
от 140 000 до 180 000 ₽
21 окт. 2020, в 22:40
300 руб./за проект
21 окт. 2020, в 22:34
25000 руб./за проект
21 окт. 2020, в 21:24
7000 руб./за проект