>백엔드 개발 >파이썬 튜토리얼 >여러 Pandas Dataframe 열에 함수를 적용하고 새 열을 만드는 방법은 무엇입니까?

여러 Pandas Dataframe 열에 함수를 적용하고 새 열을 만드는 방법은 무엇입니까?

DDD
DDD원래의
2024-12-07 17:12:13907검색

How to Apply a Function to Multiple Pandas Dataframe Columns and Create a New Column?

Pandas 데이터프레임의 여러 열에 함수 적용

상황은 다음과 같습니다. 함수와 데이터프레임이 정의되고, 목표는 데이터 프레임의 두 특정 열에 함수를 적용하여 새 열을 생성하는 것입니다. 그러나 함수와 함께 적용 메서드를 사용하려고 하면 오류가 발생합니다.

이 문제를 해결하려면 다음과 같은 여러 가지 접근 방식이 있습니다.

열 이름이 있는 람다 표현식

간결하고 읽기 쉬운 솔루션은 적용 내에서 람다 표현식을 사용하는 것입니다. 방법:

df['col_3'] = df.apply(lambda x: get_sublist(x.col_1, x.col_2), axis=1)

이 접근 방식은 숫자 인덱스 대신 열 이름을 직접 활용하므로 오류가 발생할 가능성이 적습니다.

예제 데이터 예시

예제 데이터를 고려하세요.

df = pd.DataFrame({'ID':['1', '2', '3'], 'col_1': [0, 2, 3], 'col_2':[1, 4, 5]})
mylist = ['a', 'b', 'c', 'd', 'e', 'f']

이전 코드를 실행하면 새 코드가 생성됩니다. 원하는 결과가 포함된 열 col_3:

  ID  col_1  col_2      col_3
0  1      0      1     [a, b]
1  2      2      4  [c, d, e]
2  3      3      5  [d, e, f]

비표준 열 이름에 대한 대괄호

열 이름에 공백이 포함되거나 기존 데이터 프레임 속성과 일치하는 경우, 대괄호를 사용할 수 있습니다:

df['col_3'] = df.apply(lambda x: f(x['col 1'], x['col 2']), axis=1)

위 내용은 여러 Pandas Dataframe 열에 함수를 적용하고 새 열을 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.