Я искал ответ на этот вопрос в течение нескольких часов. Я использую Python 3.6.7 и Панды 0.23.4. Я пытаюсь получить подмножество строк из кадра данных, используя query (), а затем добавить дополнительные столбцы к этому подмножеству. Ниже приведен фрагмент кода:
df.query(f'({column}_c != {column}_c) & ({column}_t == {column}_t)')
.assign(reason='Calculated has value but target does not',
name=column,
calced=df[column + '_c'],
targeted=df[column + '_t'])
Исходный фрейм данных размером около 29K строк, когда я выполняю только часть запроса этой цепочки, я получаю 0 строк назад. Однако после assign () у меня снова есть 29K строк. Я думал, что query () сделал копию фрейма данных, поэтому я не ожидал такого поведения. У всех есть идеи, что происходит (я тоже попробовал подход df [] с теми же результатами)