안녕하세여! 현재 데이터분석 인턴으로 지내고 있습니다! 데이터분석이라는 이름에 속아서 거의 업무자동화를 도와주고 제 공부만 하고 있지만,,, 업무를 할때 제가 있는 기관에서 사용했던! 도움이되었던! 코드를 올려보려고 합니다! 거의 파이썬으로 했습니다! 그런데 기관에서 계속적인 사용을 위해 엑셀 함수를 원하더라구여,,저도 겨우 함수식 만들었지만,,파이썬 위주로 올리겠습니다!!

#특정컬럼명 작은 따움표제거
##수많은 이메일 주소들이 그냥 줄글 처럼 ','로 나눠져 있어서 /메일을 보낼때 복붙을 하려고 했지만 ','가 있어서 하나하나 복붙을 해야한다고 하시더라구요! 그래서 썻던 코드입니다!!
import pandas as pd
df = pd.read_excel('파일이름.xlsx')
df.columns
df_list = df['columns명'].values.tolist()
print(df_list)
list = df_list
print('[',end='')
for i in list:
    print(i+','*(i!=list[-1]),end='')
print(']')
  1. 행 삭제시 범위를 지정하여 삭제
    #이 코드는 검색하면 거의 나오는데 제가 자주 까먹어서,,ㅎㅎ
df.drop(df.index[원하는 행범위만큼]
#df.drop(df.index[0:10])

3.pdf -> txt

import PyPDF2
pdfReader = PyPDF2.PdfFileReader("파일경로.pdf")
print("No. Of Pages :", pdfReader.numPages)
pageObject = pdfReader.getPage(2)
print(pageObject.extractText())

#전체 내용을 추출 for루프를 이용하여 모든 페이지를 하나의 텍스트 자료로 통합
total = ''
for i in range(pdfReader.numPages):
    data = pdfReader.getPage(i).extractText()
    total += data
print(total[:1000])
#텍스트 자료로 통합된 것을 파일로 저장
with open('파일이름.txt','w')as f:
    f.white(total)

4.폴더 안의 모든 하위 파일 복사해서 하나의 폴더로 합치기

import os
import shutil
import time
del read_all_file(path):
    output = os.listdir(path)
    file_list = []
    for i in output:
        if os.path.isdir(path+"/"+i):
           file_list.extend(read_all_file(path+"/"+i))
        elif os.path.isfile(path+"/"+i):
           file_list.append(path+"/"+i)
     return file_list

def copy_all_file(file_list, new_path):
    for src_path in file_list:
        file = src_path.split("/")[-1]
        shutil.copyfile(src_path, new_path+"/"+file)
        print("파일 {} 작업 완료".format(file)) #작업한 파일명 출력
        
start_time = time.time()

src_path = "기존폴더경로" #기존 폴더 경로
new_path = "옮길폴더경로" #옮길 폴더 경로

file_list = read_all_file(src_path)
copy_all_file(file_list, new_path)

print("="*40)
print("러닝 타임 : {}".format(time.time() - start_time)) #총 소요시간 계산

5.pdf to excel
#제가 제일 유용하게 사용했던 코드입니다! 이 코드를 잘 사용하려면 pdf파일이 동일한 형식이면 좋아여!! 동일하지 않다면 excel로 추출해도 깔끔하게 나오지는 않습니다!! 저는 몇백개 기관 회계자료(회계사무소는 같았음)에서 필요한 부분들을 컬럼으로 만들려고 했어서 매우 유용하게 사용했습니다. 처음 ocr을 추천 받아서 하려고 했으나 이것저것 찾아보다 이렇게 코드를 사용하게 되었습니다!!
🔥주의사항🔥 pdfplumber을 다운받으셔야 합니다!

모듈을 다운 받는 방법 아시죠~?
{!pip install 모듈} 그런데 pdfplumber은 따로 찾아서 해야합니다ㅜㅜ

import pdfplumber
import pandas as pd
pdf = pdfplumber.open("파일명.pdf")
page=pdf.pages[2] #몇페이지인지
pdf
tables = page.extract_tables()
print(tables[0])#몇번째 표인지
df = pd.DataFrame(tables[0])
pdf.close()
df
df.to_excel('저장경로설정.xlsx)
  1. 행을 열 이름으로 지정하지 않음
    #이것도 간단한 코드?이지만 매번 검색하는,,!!ㅎ
#행을 열 이름으로 지정하지 않음 
df = pd.read_~('파일경로.~',header=None)
#index_col = '속성명'인덱스로 지정
df = pd.read_~('파일경로.~',index_col='카테고리')

0개의 댓글