質問: 初歩的な質問ですみません. 1 o_000.csv, 1o_001.csv .....とcsvのファイルを一気に取り込みそれぞれを data0,data1,data2,......にしたいです. ``` while(i<100): data+str(i)=pd.read_csv('1 o_0'+str(i)+'.csv') i+=1 ``` data+str(i)の部分が間違っているのですが,どのように書けば目的とする結果が得られるでしょうか?
回答: リストを使うことで目的とする結果が得られると思いますがいかがでしょうか。 ※`range(0, 3)`はテスト用です。任意の数値に書き換えてください。 ※※質問文の`1o_001.csv`は`1 o_001.csv`の誤字と想定してコードを作成しています。 ``` import pandas as pd data = [] for i in range(0, 3): fileName = '1 o_%03d.csv' % i data.append(pd.read_csv(fileName)) #答え合わせ data2 ``` 下記のコードのように組み込み関数の`exec`を使うことで動的な変数宣言はできますが、正直なところ下記のようなコーディングは可能な限り避けたほうが良いと思います。 ``` import pandas as pd for i in range(0, 3): fileName = '1 o_%03d.csv' % i #動的にdataXを宣言して結果を格納 exec('data%d = pd.read_csv(fileName)' % i) #答え合わせ data2 ```