강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

jshihome님의 프로필 이미지
jshihome

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

작업형1 모의문제3

cond의 여러번 사용

해결된 질문

작성

·

22

·

수정됨

0

작업형1 모의문제3 문제7

 

[질문1]

풀이과정에서

2001행의 평균 조건을 cond로 사용하고

2003행의 평균 조건도 cond로 사용하셨는데,

왜 cond1, cond2 구분이 없어도 각각의 값이 출력이 되는건가용!?ㅠㅠ

 

[질문2]

df.head()
df=df.T
df.head()
print('2001 평균:', df[2001].mean())
print('2003 평균:', df[2003].mean())

print('A :', sum(df[2001]>df[2001].mean()))
print('B :', sum(df[2003]<df[2003].mean()))

print('A+B :', sum(df[2001]>df[2001].mean()) + sum(df[2003]<df[2003].mean()))

혼자 먼저 풀어보는 과정을 해봤는데요

이전에 행/열 트랜스폼 하는 거 알려주셔서~!

df.T로, 행/열 트랜스폼하구

mean()으로, 각 열(컬럼)에 대해 평균 구하고

sum으로, 크거나 작은 수의 개수를 구했는데..

 

2001 평균: 100.735

2003 평균: 97.215

A : 100

B : 102

A+B : 202

 

요렇게 나왔어요..

loc로 풀은 내용과 왜 다를까요?ㅠ

꼭 loc써야 하는 문제였을까요?!ㅠㅠ

답변 2

0

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

  1. cond 하나의 변수에 덮어쓰기를 진행했어요.
    cond1, cond2를 사용해도 됩니다:)

  2. 202가 정답 맞습니다. 노트북에 업데이트 시켜놨는데 영상에서 사용한 데이터와 약간의 차이가 발생했어요.

     

0

안녕하세요, 인프런 AI 인턴입니다. jshihome님.

질문해주신 내용은 조건 적용을 위한 변수 명명과 관련된 것입니다. Python의 Pandas를 이용하여 데이터프레임에서 조건 기반의 연산을 수행할 때 변수명을 어떻게 설정하고 사용하는가에 대한 질문이라고 생각됩니다.

여기서 cond라는 변수를 사용하여 각각의 조건을 적용하는데, 두 조건이 각기 다른 변수로 구분되지 않아도 문제 없는 이유는 다음과 같습니다. 각 조건(cond)은 서로 다른 시점에서 독립적으로 계산되고 적용됩니다. 즉, cond라는 변수가 재사용되며, 같은 변수 이름이지만 사용될 때마다 새로운 값을 저장하게 됩니다.

예를 들어, 첫 번째 조건에서 cond가 한 번 정의되고 계산된 후, 그 값을 기반으로 연산(합계 등)이 이루어집니다. 이후 두 번째 조건에서 다시 cond를 정의하면, 이전의 cond 값은 더 이상 사용되지 않고 새로운 값을 할당받게 됩니다. 이는 파이썬의 변수 범위(scope)와 변수 재할당 개념에 따른 결과입니다.

따라서 처음 조건을 계산한 다음 다시 cond에 새로운 조건을 저장하여 출력할 수 있으며, 이전 값과 상관없이 동작하게 됩니다.

유사한 질문을 하신 다른 학습자 분의 질문과 답변을 참고해보시면 많이 도움이 되실 것 같습니다.

이 내용을 바탕으로 추가적인 이해가 필요하시다면 더 많은 질문을 남겨주시면 좋겠습니다. 저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

jshihome님의 프로필 이미지
jshihome

작성한 질문수

질문하기