파이썬으로 엑셀 데이터 추출 두번째관문
조회수 631회
for filename in name_list:
df = pd.read_csv('{}'.format(filename), encoding = 'euc-kr')
df_boolean = df == '매출액'
x = df_boolean.sum(axis=1).values.argmax()
y = df_boolean.sum(axis=0).values.argmax()
num = df.iloc[x, y+1]
print(filename[7:14], num)
out
2011.12 43214858
2012.12 49334873
2013.12 53692406
2014.12 57334440
2015.12 58540389
2016.12 60289581
2017.12
2018.12
2019.12
이렇게 결과값이 나왔습니다. 제가 만들고자 하는거는 제가 원하는 값의 위치를 찾은 후 값을 프린트 하는 것인데요 보다시피 df == ' '을쓰게되면 정확한 이름을 쓰지않으면 2017, 2018, 2019처럼 공백이 나옵니다. 어떤 방법을 시도해 봐야할까요?
이렇게 되서 다른 코드를 작성해 봤습니다
for filename in name_list:
book = openpyxl.load_workbook(filename)
sheet = book.worksheets[0]
def findExistString(searchString, text):
if searchString in text: return True
else: return False
def findNonExistString(searchString, text):
if searchString in text: return False
else: return True
for row in sheet.rows:
if findExistString("매출액", row[1].value):
print(filename[7:14], row[2].value)
OUT
2011.12 43214858
2011.12 41894293
2011.12 109000
2011.12 1211565
2012.12 49334873
2012.12 47413257
2012.12 71927
2012.12 1548685
이렇게 매출액이라는 문자를 포함한 값 네개가 다 추출됩니다
첫번째 value 만 뽑는 것이 저의 목표입니다 어떻게 하면 좋을까요??
-
(•́ ✖ •̀)
알 수 없는 사용자
댓글 입력