2017-04-16 3 views
0

異なるフォーマットのデータを持つ複数のtxtファイルがあるフォルダがあります。後でマージします。当分の間、私はそれらをすべて同じ方法でフォーマットする必要があります。Python:データフレームのグループ内の特定のデータフレームを反復処理するにはどうすればいいですか

#Format 1 

dfs[3][[0,1]]= dfs[3][1].str.split(expand=True) 
dfs[4][[0,1]]= dfs[4][1].str.split(expand=True) 
dfs[3].columns=['Date','Time','Wind Vel 1','Wind Vel 2','Dir1','Dir2','NaN'] 
dfs[3] = dfs[3].drop('NaN',1) 
dfs[4].columns=['Date','Time','Wind Vel 1','Wind Vel 2','Dir1','Dir2','NaN'] 
dfs[4] = dfs[4].drop('NaN',1) 

は、どのように私は、ループ内のDFS [3]及び[4] DFSのためにこれを達成します:

path =r'C:\\Users\\data' 
filenames = glob.glob(path + "/*.txt") 

dfs = [] 
for filename in filenames: 
    dfs.append(pd.read_csv(filename, infer_datetime_format=True, sep=None, 
engine='python', header=None)) 

は、それから私は、リスト内のいくつかのデータフレームのための特定の書式を持っていますか?簡単

答えて

0

for i in (3,4): 
    dfs[i][[0,1]]= dfs[i][1].str.split(expand=True) 
    dfs[i].columns=['Date','Time','Wind Vel 1','Wind Vel 2','Dir1','Dir2','NaN'] 
    dfs[i] = dfs[i].drop('NaN',1) 
+0

ありがとうございました!これの同様のバージョンをしようとしていたが、私のフォーマットはかなり正しいとは思わない。それぞれのためにループするよりも速い別の方法がありますか? –

関連する問題