Переназначение строк или переменных dataframe с помощью iloc возвращает NaN - PullRequest
0 голосов
/ 20 октября 2019

У меня есть «кадр данных А», который частично завершен;в некоторых строках отсутствуют данные. Отсутствующие данные можно найти в строках в другом «кадре данных B» (с такими же метками, но без позиции).

Когда я пытаюсь переназначить строки в кадре данных A, python возвращает NaN для всех строк, которые япопытался переназначить.

Я пытался: iloc iloc указание столбцов iloc после того, как имена столбцов совпадают с iloc при глубоком копировании, преобразование целевого столбца в разные dtypes, например, string, float

Первая попытка, возвращаетdfA с NaN во всех столбцах строк A1: A2

dfA.iloc[A1:A2] = dfB.iloc[B1:B2]

Вторая попытка возвращает dfA с NaN в столбце 2 строк A1: A2

dfA.iloc[A1:A2, 2] = dfB.iloc[B1:B2, 2]

Третья попытка, та же проблема

dfA_copy = copy.deepcopy(dfA)
dfA_copy.iloc[A1:A2]

строки dfA_copy A1: A2

dfB_copy = copy.deepcopy(dfB)
dfB_copy.iloc[B1:B2]

строки dfB_copy B1: B2

dfA_copy.iloc[A1:A2] = dfB_copy.iloc[B1:B2] 

глубокое переназначение копии

Я ожидал, что данные из "кадра данных B" заменят отсутствующие данные в "кадре данных A".

1 Ответ

0 голосов
/ 20 октября 2019

Если у вас два кадра данных панд в одной форме, вы можете сделать что-то вроде этого

dfA[dfA.isnull()] = dfB

Если это решит ваш вопрос, примите ответ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...