#python #pandas #list #dataframe #data-manipulation
#python #pandas #Список #фрейм данных #манипулирование данными
Вопрос:
Я пытаюсь передать столбцы фрейма данных в качестве аргументов для работы по строкам, но я заканчиваю с ошибкой. Я пытался выполнить цикл, поскольку для моего фактического фрейма данных и функции требуется только цикл.
def sum(x, y, z):
return x y z
Input = pd.DataFrame({'A': [1, 2,3], 'B': [10, 20,22],'C':[4,5,6]})
output = pd.DataFrame({'output': [15, 27,31]})
##What I tried, but this tells me it needs more arguments
for a in Input:
sum(a)
Может ли кто-нибудь мне помочь, так как мне нужно повторить все строки фрейма данных как в аргументе функции, чтобы вкратце количество столбцов фрейма данных было равно количеству аргументов в функциях
Ответ №1:
Попробуйте это
Input.apply(lambda row : sum(row.A, row.B, row.C), axis=1)
ось = 1, среднее значение на уровне столбца. может ссылаться на pandas apply
Он запрашивает дополнительные аргументы, потому что не знает, с каким столбцом вы хотите выполнить операцию.