Создать новый df, добавив значения двух столбцов
Я создаю новый ряд данных из другого, я использую следующий код
df = lcldf.groupby('DateTime', as_index=False)[(lcldf['Response KWH/hh (per half hour) ']) & (lcldf['KWH/hh (per half hour) '])].sum()
Я хочу добавить значения столбцов (lcldf['Response KWH/hh (per half hour)
а также (lcldf['KWH/hh (per half hour)
на те же даты lcldf['Date']
Однако я получил следующую ошибку:
Ошибка типа: неподдерживаемые типы операндов для &: 'str' и 'str'
Я не знаю, могу ли я выполнить эту операцию одновременно, если это невозможно, почему может быть способ сделать это?
Оригинальный df:
House DateTime KWH/hh (per half hour) Response KWH/hh (per half hour)
1 11/8/2012 10:30:00 AM 2 1
1 11/8/2012 11:00:00 AM 5 4
1 11/8/2012 11:30:00 AM 1 1
2 11/8/2012 10:30:00 AM 2 1
2 11/8/2012 11:00:00 AM 5 4
2 11/8/2012 11:30:00 AM 1 1
3 11/8/2012 10:30:00 AM 2 1
3 11/8/2012 11:00:00 AM 5 4
3 11/8/2012 11:30:00 AM 1 1
И ожидаемый результат будет примерно таким (dflcl)
DateTime KWH/hh (per half hour) Response KWH/hh (per half hour)
11/8/2012 10:30:00 AM 6 3
11/8/2012 11:00:00 AM 15 12
11/8/2012 11:30:00 AM 3 3
1 ответ
Ты можешь использовать:
df = lcldf.groupby('DateTime').sum()[["KWH/hh (per half hour)", "Response KWH/hh (per half hour)"]]