умножение столбцов с использованием цикла for и pd.dataframe - PullRequest
0 голосов
/ 01 апреля 2019

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

#calculate energy amounts

energy_use_by_fuel = pd.DataFrame()
for hhid in energy_data.hhid.unique(): 
    tempdtf = pd.DataFrame({
       'hhid':hhid, 
       'monthly_electricity': energy_data.loc[energy_data.hhid == hhid, 'estimated_kwh_monthly']*3, 
       'monthly_gas': energy_data.loc[energy_data.hhid == hhid, 'monthly_gas_use_kg'] * 4,
       'monthly_charcoal': energy_data.loc[energy_data.hhid == hhid, 
       'monthly_charcoal_use_kg'] * 5})

    #join
    tempdtf = energy_use_by_fuel.append(tempdtf, ignore_index = True)

Как видите, я бы хотел рассчитать различные виды использования энергии для электричества, газа и угля. Но когда я умножаю данные на числа, результирующий кадр данных energy_use_by_fuel становится пустым.

1 Ответ

0 голосов
/ 02 апреля 2019

Функция df.append() возвращает новый объект, добавляя DataFrame, поэтому я думаю, что ваш код устанавливает неправильную переменную.

#join
energy_use_by_fuel = energy_use_by_fuel.append(tempdtf, ignore_index = True)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...