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
- PyQt5
- 함수
- IOS
- swift
- 유니티
- Excel
- python
- flutter
- Linux
- javascript
- Unity
- 다이어트
- mssql
- pandas
- 리눅스
- PER
- 라즈베리파이
- urllib
- node.js
- port
- ubuntu
- 날짜
- ASP
- sqlite
- tensorflow
- PyQt
- GIT
- 맛집
- MySQL
- MS-SQL
Archives
아미(아름다운미소)
df 에서 a컬럼으로 distinct 했을때 b컬럼이 true인 c값을 copy해서 해당그룹의 b값을모두 c값으로 바꿔준다 본문
랭귀지/pandas
df 에서 a컬럼으로 distinct 했을때 b컬럼이 true인 c값을 copy해서 해당그룹의 b값을모두 c값으로 바꿔준다
유키공 2024. 9. 2. 09:31import pandas as pd
# 예시 데이터프레임 생성
data = {
'a': ['x', 'x', 'y', 'y', 'z'],
'b': [True, False, True, False, False],
'c': [1, 2, 3, 4, 5]
}
df = pd.DataFrame(data)
# b값을 c값으로 업데이트
df['b'] = df.groupby('a')['b'].transform(lambda x: df.loc[x.index, 'c'][x].iloc[0] if any(x) else None)
print(df)
import pandas as pd
# 예시 데이터프레임 생성
data = {
'a': ['x', 'x', 'y', 'y', 'z'],
'b': [True, False, True, False, False],
'c': [1, 2, 3, 4, 5]
}
df = pd.DataFrame(data)
# 그룹화하여 b가 True인 c 값을 찾고, 해당 값을 모든 b 값으로 변경
df['c'] = df.groupby('a')['c'].transform(lambda x: x[df['b']].iloc[0] if any(df['b']) else None)
# b 값을 c 값으로 변경
df['b'] = df['c']
print(df)
Comments