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

parkhyungbin님의 프로필 이미지

작성한 질문수

파이썬 판다스(pandas)로 데이터 분석 및 가공하기

판다스 데이터 처리에 대한 질문입니다.

해결된 질문

작성

·

194

0

강의 보면서 이런저런 내용들로 구글검색도 해보면서 진행하고있습니다.

선생님이 설명해주신 내용까지 이해를 하였는데 두개의 데이타에서 중복값을 찾거나

값 전체가 아닌 일부분만 바꾼다거나 그런 특수한 경우에 대해서는 좀 어렵네요...

혹시 관련되어 질문이 가능할까하여 글 남깁니다...

import pandas as pd
from pandas import DataFrame as df
과자목록1 = ['초코-파이','-','빼빼로','호두파이','-사탕']
과자목록2 = ['초코-파이','-','바나나킥','땅콩파이','못난감자']
야채목록 = ['가지','오이','토마토','콩나물','고추']
가격 = ['500', '1000', '700', '800', '600']

df1 = df(
data={'과자': 과자목록1, '비고' : 0})

df2 = df(data={'과자': 과자목록2,'가격':가격})
jul = []
j =
0
for i in 과자목록1 :
for j in range(0, 10) :
if i == df2.과자[j]
jul = jul + j
j = j +
1


-----


여러 경우를 다 만들어가보면서 진행중인데
만약에 두개의 다른 과자목록이 있는 데이타프레임에서 중복값이 있다면
그 행이 몇번째 몇번째인지 뽑아서 리스트로 만들어보고 싶습니다.
그런데

File "C:/Users/user/PycharmProjects/py2/df.py", line 20 if i == df2.과자[j] ^ SyntaxError: invalid syntax

이런 오류가 생기네요
혹시 왜 그런건지 알려주실수 있을까요?

답변 2

1

Kyeongrok Kim님의 프로필 이미지
Kyeongrok Kim
지식공유자

과자목록1 = ['초코-파이', '몽-쉘', '빼빼로', '호두파이', '별-사탕']
과자목록2 = ['초코-파이', '몽-쉘', '바나나킥', '땅콩파이', '못난감자']
야채목록 = ['가지', '오이', '토마토', '콩나물', '고추']
가격 = ['500', '1000', '700', '800', '600']

df1 = df(data={'과자': 과자목록1, '비고': 0})

df2 = df(data={'과자': 과자목록2, '가격': 가격})
jul = []
j = 0
for i in range(len(df1)):
for j in range(len(df2)):
if df1.과자[i] == df2.과자[j]:
jul.append(j)

print(jul)

일단은 위와 같이 해보세요.

0

parkhyungbin님의 프로필 이미지
parkhyungbin
질문자

감사합니다 선생님. 위 방법으로 하니까 가능하네요.

그런데 지금 상황은 데이터프레임이 동일한 상태에서 비교하는 거라 가능한거같은데

만약 사이즈가 다른 상황에서 위와같이 적용이 가능한가요? 

ex. (과자목록1은 값이 10개, 과자목록2는 값이 5개)

가능하다면 어떤 방법으로 접근해야할까요?