Я пытаюсь просмотреть конкретный столбец Pandas DataFrame и пытаюсь сделать следующее:
col0 col1 col2
int0 float0 str0
int1 float1 str0
int2 float2 str1
Я пытаюсь просто перебирать DataFrame построчно в этом столбце, но это не кажется эффективным. Лямбды - это вариант, но я не уверен, есть ли что-то вроде "понимания списка" для столбцов DataFrame ( насколько я понимаю, это серия Pandas).
Если, скажем, DataFrame определен как df, то я хочу сделать что-то вроде:
for row in df:
if df['col2'] == str0:
# do some calculation for all str0 types
elif df['col2'] == str1:
# do another calculation for all str1 types
else:
# do another calculation for all other types (which are actually str2 types implied by the if-elif-else statement)
Я пытаюсь повторить это, чтобы получить отдельную матрицу NumPy, которая создаст строку NumPy, соответствующую соответствующей строке DataFrame. При проверке условия для «col2» будет выполнен отдельный расчет в зависимости от его значения, и будет сгенерирована строка для соответствующего массива NumPy.
Пожалуйста, дайте мне знать, есть ли эффективный способ (как с точки зрения канонического, Pythonic кодирования, так и эффективности времени и памяти)! Вся помощь будет оценена по достоинству.