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 |
Tags
- ubuntu
- PyQt
- Excel
- MS-SQL
- 다이어트
- 유니티
- 날짜
- tensorflow
- MySQL
- 라즈베리파이
- urllib
- javascript
- Linux
- mssql
- sqlite
- flutter
- ASP
- 리눅스
- python
- port
- GIT
- pandas
- 맛집
- swift
- PyQt5
- 함수
- PER
- IOS
- node.js
- Unity
Archives
아미(아름다운미소)
a,b,c,d 컬럼으로 groupby 했을때e==b인 row의 f값을취하고 e==b인 row가없을시 null을 넣고 g컬럼을 생성한다 본문
랭귀지/pandas
a,b,c,d 컬럼으로 groupby 했을때e==b인 row의 f값을취하고 e==b인 row가없을시 null을 넣고 g컬럼을 생성한다
유키공 2024. 8. 6. 09:20import pandas as pd
import numpy as np
# 예시 데이터프레임 생성
data = {
'a': ['foo', 'foo', 'bar', 'bar', 'foo', 'bar'],
'b': ['one', 'one', 'two', 'two', 'one', 'two'],
'c': ['small', 'small', 'large', 'large', 'small', 'large'],
'd': [1, 1, 2, 2, 1, 2],
'e': ['one', 'two', 'two', 'one', 'one', 'three'],
'f': [10, 20, 30, 40, 50, 60]
}
df = pd.DataFrame(data)
# 그룹화 및 f 컬럼 값 추출
def get_f_value(group):
if (group['e'] == group['b'].iloc[0]).any(): # e가 b와 같은지 확인
return group.loc[group['e'] == group['b'].iloc[0], 'f'].iloc[0]
else:
return np.nan # 없을 경우 null (NaN)
# g 컬럼 생성
df['g'] = df.groupby(['a', 'b', 'c', 'd']).apply(get_f_value).reset_index(drop=True)
print(df)
'랭귀지 > pandas' 카테고리의 다른 글
pandas df1의 a컬럼으로 df2 a컬럼 검색 (0) | 2024.08.07 |
---|---|
pandas Coalesce (0) | 2024.08.06 |
pandas a,b,c,d 컬럼으로 groupby 했을때 e컬럼의 Mode룰 취해 mode컬럼생성 (0) | 2024.08.06 |
pandas a df에서 b컬럼을 distinct 했을때 c컬럼이 true인 d컬럼의값을 copy해서 a df에 넣어주는 예제 (0) | 2024.08.06 |
pandas a커럼을 drop하고b,c,d컬럼을 기준으로 groupby 한후 e컬럼의 최빈값을 취한다.동률일경우 Min 값을 가져온다 (0) | 2024.08.01 |
Comments