Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- pandas
- swift
- 유니티
- ASP
- ubuntu
- PER
- 맛집
- flutter
- 라즈베리파이
- GIT
- 함수
- sqlite
- 다이어트
- tensorflow
- MS-SQL
- port
- 날짜
- Linux
- Excel
- javascript
- 리눅스
- urllib
- python
- mssql
- PyQt5
- node.js
- IOS
- Unity
- MySQL
- PyQt
Archives
아미(아름다운미소)
람다 함수로 사용자함수에 여러개 파라미터 전달하는 방법은? 본문
람다 함수를 사용하여 3개의 파라미터를 전달하는 방법은 다음과 같습니다:
여기서 중요한 점은 람다 함수 내부에서 `my_function`을 호출할 때 4개의 인자를 전달해야 한다는 것입니다. 첫 번째 인자는 DataFrame의 각 행에 해당하는 값(`x`)이며, 나머지 3개의 인자는 `my_function`의 두 번째, 세 번째, 네 번째 파라미터에 해당하는 값들입니다.
이렇게 하면 DataFrame의 각 행에 대해 `my_function`이 호출되며, 3개의 추가 파라미터도 함께 전달됩니다.만약 이 3개의 파라미터 값이 고정되어 있다면, 람다 함수 외부에서 미리 정의해두고 사용할 수 있습니다:이렇게 하면 코드의 가독성이 높아지고, 파라미터 값을 쉽게 변경할 수 있습니다.
def my_function(x, param1, param2, param3):
# 함수 내부 로직
return result
param1 = 'value1'
param2 = 'value2'
param3 = 'value3'
df['result_column'] = df.apply(lambda x: my_function(x['column_to_process'], param1, param2, param3), axis='columns')
컬럼값을 여러게 넘기려면
def my_function(col1, col2, col3, param1, param2):
# 함수 내부 로직
return result
df['result_column'] = df.apply(lambda x: my_function(x['column1'], x['column2'], x['column3'], param1, param2), axis='columns')
다른예:
import pandas as pd
# 데이터 프레임을 생성합니다
df = pd.DataFrame({
'A': [1, 2, 3],
'B': [4, 5, 6],
'C': [7, 8, 9]
})
# 사용자 정의함수를 정의합니다
def custom_function(row, param1, param2):
return row['A'] * param1 + row['B'] * param2
# 파라미터를 지정하고 apply 메서드를 사용하여 새로운 컬럼을 생성합니다
df['D'] = df.apply(lambda row: custom_function(row, 2, 3), axis=1)
print(df)
'랭귀지 > pandas' 카테고리의 다른 글
pandas 병렬처리 (0) | 2024.06.27 |
---|---|
타입지정 (0) | 2024.06.26 |
pandas 날짜차이 분으로 환산 (0) | 2024.06.24 |
fastapi mysql crud & javascript & flutter 예제 (0) | 2024.06.22 |
pandas lamda 예제 (0) | 2024.06.22 |
Comments