-
카테고리
-
세부 분야
데이터 분석
-
해결 여부
미해결
EDA/pandas/시각화로 이커머스 거래액 상세 분석1 11:02
24.01.07 22:01 작성 24.01.07 23:19 수정 조회수 119
0
l1. ine 48은 실행되고
line49실행될때 에러가 발생하는 이유가 뭔가요? 문법적으로 어디가 틀린거죠?
line48과 49 같은 의미로 사용하려는데.
payments에 order _id 있으니까 [[]]으로 다가가서 값 꺼내오는게 왜 틀렸을까요. 어떤개념이 잘못된거죠
ps
line46
print(payments)
line48
-
line49
답변을 작성해보세요.
0
잔재미코딩 DaveLee
지식공유자2024.01.09
안녕하세요. 답변 도우미입니다.
우선 아직 자신이 작성한 코드에서 이슈가 있을 때, 어떤 이슈인지 파악하시는 과정이 어색하시다면, 우선은 강의에서 제공해드린 코드를 다운로드 받으셔서 그대로 실행해보시면서 강의와 문법을 파악하시는 것이 더 효과가 좋습니다.
추가로 문의하신 부분에 대해서는
이미지에 있는 코드를 보면, line 48과 line 49에서 pandas의 indexing을 사용하여 payments
데이터프레임에서 데이터를 선택하려고 하고 있습니다.
Line 48에서는 payments[payments.index == 'fa65dad1b0e818e3cc5cb0e39231352']
형식을 사용하고 있습니다. 이는 payments
데이터프레임의 인덱스를 이용하여 특정 인덱스 값을 가진 행을 선택하는 방법입니다. 이 경우 정상적으로 작동합니다.
반면, line 49에서는 payments[payments['order_id'] == 'fa65dad1b0e818e3cc5cb0e39231352']
형식을 사용하고 있습니다. 여기서 payments['order_id']
는 payments
데이터프레임의 'order_id'
열을 선택하고, 그 열에 대해 주어진 조건('order_id'
값이 'fa65dad1b0e818e3cc5cb0e39231352'
인 경우)에 맞는 행을 필터링합니다. 이 방식도 문법적으로는 맞으며, 정상적으로 작동해야 합니다.
Line 49에서 문제가 발생하는 경우는 다음과 같을 수 있습니다:
order_id
열이payments
데이터프레임에 존재하지 않을 때.order_id
열의 데이터 타입이 문자열이 아니고, 직접적으로 문자열과 비교를 시도할 때.payments
데이터프레임이 수정되어 원하는order_id
값을 포함하고 있지 않을 때.
에러 메시지가 없어서 정확한 문제를 파악하기 어렵지만, 이러한 경우에 해당하는지 확인해보시기 바랍니다.
만약 order_id
열이 존재하고, 올바른 데이터 타입을 가지며, 해당 값이 데이터프레임에 존재한다면, line 49의 코드는 정상적으로 작동해야 합니다. 에러가 발생하는 경우 에러 메시지를 통해 추가적인 단서를 얻을 수 있습니다.
답변 1