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 중국어 웹사이트의 기타 관련 기사를 참조하세요!