2016년 6월 22일 수요일

Python을 이용한 데이터 가공 및 분석(1)

blog1

Python을 이용한 데이터 가공 및 분석(1)

1. glob, os 모듈로 파일 및 폴더 목록 얻기

glob와 os 모듈은 아래 내용들보다 훨씬 다양한 method를 제공하지만, 여기서는 데이터 가공 및 분석을 위해 glob와 os 모듈을 이용하여 기본적인 파일 및 폴더 목록을 얻어오는 방법에 대해 간단하게 알아보고 추후 필요한 경우 간간히 포스팅 하겠습니다^^.

먼저 glob와 os 모듈을 각각 import 합니다.

In [1]:
import glob
import os

os.getcwd() method는 Current Working Directory Path를 string type으로 반환 해줍니다.
※ Python string의 경우 '\'는 escape 문자로 사용되기 때문에 경로를 표시하는 경우 '\'로 나타냅니다.

In [2]:
os.getcwd()
Out[2]:
'C:\\Users\\yugul3291'

만약, '\'로 표시하는 것이 신경쓰인다면, 다음을 이용할 수 있습니다.

In [3]:
r'C:\Users\yugul3291'
Out[3]:
'C:\\Users\\yugul3291'

아래와 같이 os.listdir() method를 이용해 해당 path의 파일 및 폴더 목록을 list type으로 반환 받을 수도 있습니다.

In [4]:
os.listdir(r'C:\Users\yugul3291\testdata')
Out[4]:
['data1.csv',
 'data2.csv',
 'data3.csv',
 'folder',
 'testdata1.txt',
 'testdata2.txt',
 'testdata3.txt']

glob.glob() method를 이용하면 파일 및 폴더의 full path 목록을 list type으로 반환 받을 수 있습니다.

In [5]:
glob.glob(r'C:\Users\yugul3291\testdata')
Out[5]:
['C:\\Users\\yugul3291\\testdata']

glob.glob() method의 path parameter를 아래와 같이 활용 할 수도 있습니다.

  • string concat
  • * asterist(wildcard)
In [6]:
glob.glob(os.getcwd()+'\\testdata\\*.txt')
Out[6]:
['C:\\Users\\yugul3291\\testdata\\testdata1.txt',
 'C:\\Users\\yugul3291\\testdata\\testdata2.txt',
 'C:\\Users\\yugul3291\\testdata\\testdata3.txt']
In [7]:
glob.glob(os.getcwd()+'\\testdata\\*.csv')
Out[7]:
['C:\\Users\\yugul3291\\testdata\\data1.csv',
 'C:\\Users\\yugul3291\\testdata\\data2.csv',
 'C:\\Users\\yugul3291\\testdata\\data3.csv']

댓글 없음:

댓글 쓰기