Data Analysis/Python
[python] file 속 데이터들을 전부 가져오는 방법 glob.glob
[지현]
2020. 2. 8. 15:15
1
2
|
import glob
(glob.glob("../data/x/*/*.csv"))
|
위 코드 번역
==>data라는 폴더안에 들어있는 모든 폴더에 들어가서 .csv에 해당하는 모든 파일을 데려와서 directory를 보여라.
더보기
응용: ravel과 glob를 이용해 데이터 전처리 하는 방법 (옆으로 늘어져있던걸 밑으로 늘리는 방법)
https://jlim0316.tistory.com/122
ravel c에 이어지는
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 y = pd.read_csv("../data/y.csv",encoding ='cp949', skiprows = 6)colnames = [x for x in y.columns]company = colnames[0:3]del colnames[0:3]credit = pd.Series(y.set_index(company)[colnames].values.ravel('C'))credit = pd.DataFrame({'KIS_credit':credit})company = y.loc[y.index.repeat(5)].reset_index(drop=True)[['KIS', 'Stock', 'Name']]data = pd.concat([company, credit], axis = 1)year = cycle([2014, 2015, 2016, 2017, 2018])data['year'] = [next(year) for count in range(data.shape[0])]#-------------------------------------------------------------------------#def data_preprocessing(readcsv_string, col_string):y = pd.read_csv(readcsv_string, encoding ='cp949', skiprows = 6)colnames = [x for x in y.columns]company = colnames[0:3]del colnames[0:3]credit = pd.Series(y.set_index(company)[colnames].values.ravel('C'))credit = pd.DataFrame({col_string:credit})company = y.loc[y.index.repeat(5)].reset_index(drop=True)[['KIS', 'Stock', 'Name']]y = pd.concat([company, credit], axis = 1)year = cycle([2014, 2015, 2016, 2017, 2018])y['year'] = [next(year) for count in range(y.shape[0])]return(y)#-----------------------------------------------------------------------#filename = glob.glob("../data/x/*/*.csv")for f in filename:colname = f.split('\\')[2].split('.')[0]temp = data_preprocessing(f,colname)data[colname] = temp[colname]data