2017-09-30 9 views
0

.expファイルのあるフォルダがあります。それらは基本的に.csvファイルですが、拡張子.exp(楽器からエクスポートされたファイルの形式のみ)です。 .expを.csvに変更すると、ExcelでCSVファイルとして開くことができるので、私は知っています。例:https://uowmailedu-my.sharepoint.com/personal/tonyd_uow_edu_au/Documents/LAB/MC-ICPMS%20solution/Dump%20data%20here?csf=1いくつかのcsvファイルをPythonのデータフレームに読み込みます。

Pythonでは、各ファイルのデータをデータフレーム(各ファイルに1つずつ)に読み込みたいと思います。私は次のコードを試しましたが、リストdfsとすべてのファイルとを作成します: (i)リストdfsの内容にアクセスしていくつかのデータフレームにする方法がわかりません 元の.expファイルの列のように失われました。

import os 
# change directory 
os.chdir('..\LAB\MC-ICPMS solution\Dump data here') 
path = os.getcwd() 

import glob 
import pandas as pd 

# get data file names 
filenames = glob.glob(path + "/*.csv") 

dfs = [] 
for filename in filenames: 
    dfs.append(pd.read_csv(filename)) 

私はこれらのファイルをどのようにデータフレームに読み込むことができたのでしょうか?コンテンツに簡単にアクセスできますか? 私はこのポストを見つけました:Storing csv file's contents into data Frames [Python Pandas]私の場合はあまり役に立ちません。 ありがとう

+0

あなたのコードは、不要な 'chdir()'とまったく同じように見えます。どうしましたか? –

+1

"/*.csv"しかし、あなたはファイルが.expで終わると言っていますか? –

答えて

0

フォルダへの絶対パスを使用することをお勧めします。また、ファイル部分を組み合わせる場合(文字列連結よりも良い)、os.path.join()を使用する方が安全です。

わかりやすいように、データフレームのリストを作成するだけでなく、ファイル名とデータフレームを含むタプルのリストを作成することで、どのデータがどれかを知ることができます。

あなたのコードでは、現在csv個のファイル(exp個以外)を検索中です。

以下はデータフレームのリストを作成し、各エントリは対応するファイル名も格納します。エンドエンドでは、すべてのエントリを循環し、データを表示します。

最後に、たとえば最初のエントリだけを表示する方法を示します。

import pandas as pd 
import glob 
import os 

# change directory 
os.chdir('..\LAB\MC-ICPMS solution\Dump data here') 
path = os.getcwd() 

# get data file names 
dfs = [] 

for filename in glob.glob(os.path.join(path, "*.exp")): 
    dfs.append((filename, pd.read_csv(filename))) 

print "Found {} exp files".format(len(dfs)) 

# display each of your dataframes 
for filename, df in dfs: 
    print filename 
    print df 

# To display just the first entry: 
print "Filename:", df[0][0] 
print df[0][1] 
関連する問題