2019年2月17日日曜日

Python3 ファイル操作

#tree表示
#Linuxでは sudo apt-get install tree
#dataフォルダ以下をツリー表示
!tree data

#ファイルリスト取得1
import glob

path = './data/**/*.csv'
files = glob.glob(path)
csv_list = pd.Series(files)

#取得したリストをもとに、csv結合
df = pd.DataFrame()
csv_data = []

for csv in csv_list:
    df_temp=pd.read_csv(csv,
                        usecols=[0,5,10],
                        index_col=None,
                        header=0) 
    csv_data.append(df_temp)
df= pd.concat(csv_data)
df=df.reset_index(drop=True)
df

#ファイルリスト取得2
import os

dir = os.path.join('111','222','333')
files = os.listdir(dir)

#データフレームに格納されているパスを使って、
#1行毎にデータコピー
import os
import shutil

for column_name, itm in files.iterrows():
    #文字列型でjoin
    dst = os.path.join(itm[1],itm[0],str(itm[2]))
    src = itm[3]
    if not os.path.exists(dst):
        os.makedirs(dst) #sub_foldersまで作る
    shutil.copy(src,dst)

20210218追記

0 件のコメント:

コメントを投稿