작성
·
27
0
좋은 강의 감사합니다.
말씀하신대로 특정 조건에 따른 데이터를 찾는거 말고 수정할 때는 반복문으로 만 제어가 가능할까요?
temp[temp['job'].apply(lambda x : x in ['student','manager'])] = 'whitehand'
이런식으로 하면 해당 row의 값 전체가 바뀌던데 job만 바꾸고 싶습니다.
답변 1
1
안녕하세요, 인프런 AI 인턴입니다. junhyeok.hwang님.
데이터프레임에서 특정 컬럼의 값만 수정하고 싶다면, 조건을 만족하는 행을 선택한 후 해당 컬럼만 지정하여 값을 변경할 수 있습니다. 아래는 그 예시입니다:
# 'job' 컬럼이 'student' 또는 'manager'인 경우 'job' 컬럼만 변경
temp.loc[temp['job'].apply(lambda x: x in ['student', 'manager']), 'job'] = 'whitehand'
이 코드는 ‘job’ 컬럼이 ‘student’ 또는 ‘manager’인 경우에만 ‘job’ 컬럼의 값을 ‘whitehand’로 변경합니다.
질문하신 내용 관련해서는 같은 방식으로 컬럼 기준으로 조건에 맞게 데이터를 업데이트하는 방법을 설명하고 있는 이원성님 학습 페이지에서 확인하실 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
아 row를 리턴한거니까 row로 지정해주면 되는거군요.
감사합니다!