以下のようになっているフォルダの中にtsv形式のファイル"test.dat"があり、各ファイルのデータを読み込んで最終的にはグラフにして表示したいと思いました。
まず最初は、連番の変数名を生成し、そこに各ファイルを読み込もうとしましたが、そういったときはリストを用いたほうが良いと調べたら出てきたので以下のようにリストを生成し、そこへ各フォルダを読み込もうとしました。
しかし、実行すると以下のようなエラーメッセージが出てしまい、調べると配列のサイズが違う為、ということがわかり、対策として、配列のサイズを変えてみましたが同じエラーが出ました。もしよろしければ解決するために皆様の知恵をお貸しいただけないでしょうか。
また、今回のような場合、別の方法を用いたほうがよければ、そちらの方法を教えていただいてもよろしいでしょうか、よろしくお願いいたします。
#追記、ファイルの配置 ├── a350 │ ├── b100 │ │ └── test.dat │ ├── b101 │ │ └── test.dat │ ├── b102 │ │ └── test.dat │ ├── b103 │ │ └── test.dat │ ├── b104 │ │ └── test.dat │ ├── b105 │ │ └── test.dat │ ├── b106 │ │ └── test.dat │ ├── b107 │ │ └── test.dat │ ├── b108 │ │ └── test.dat │ ├── b109 │ │ └── test.dat │ └── b110 │ └── test.dat ├── a375 │ ├── b100 │ │ └── test.dat │ ├── b101 │ │ └── test.dat │ ├── b102 │ │ └── test.dat │ ├── b103 │ │ └── test.dat │ ├── b104 │ │ └── test.dat │ ├── b105 │ │ └── test.dat │ ├── b106 │ │ └── test.dat │ ├── b107 │ │ └── test.dat │ ├── b108 │ │ └── test.dat │ ├── b109 │ │ └── test.dat │ └── b110 │ └── test.dat ├── a400 │ ├── b100 │ │ └── test.dat │ ├── b101 │ │ └── test.dat │ ├── b102 │ │ └── test.dat │ ├── b103 │ │ └── test.dat │ ├── b104 │ │ └── test.dat │ ├── b105 │ │ └── test.dat │ ├── b106 │ │ └── test.dat │ ├── b107 │ │ └── test.dat │ ├── b108 │ │ └── test.dat │ ├── b109 │ │ └── test.dat │ └── b110 │ └── test.dat ├── a425 │ ├── b100 │ │ └── test.dat │ ├── b101 │ │ └── test.dat │ ├── b102 │ │ └── test.dat │ ├── b103 │ │ └── test.dat │ ├── b104 │ │ └── test.dat │ ├── b105 │ │ └── test.dat │ ├── b106 │ │ └── test.dat │ ├── b107 │ │ └── test.dat │ ├── b108 │ │ └── test.dat │ ├── b109 │ │ └── test.dat │ └── b110 │ └── test.dat ├── a450 │ ├── b100 │ │ └── test.dat │ ├── b101 │ │ └── test.dat │ ├── b102 │ │ └── test.dat │ ├── b103 │ │ └── test.dat │ ├── b104 │ │ └── test.dat │ ├── b105 │ │ └── test.dat │ ├── b106 │ │ └── test.dat │ ├── b107 │ │ └── test.dat │ ├── b108 │ │ └── test.dat │ ├── b109 │ │ └── test.dat │ └── b110 │ └── test.dat ├── a475 │ ├── b100 │ │ └── test.dat │ ├── b101 │ │ └── test.dat │ ├── b102 │ │ └── test.dat │ ├── b103 │ │ └── test.dat │ ├── b104 │ │ └── test.dat │ ├── b105 │ │ └── test.dat │ ├── b106 │ │ └── test.dat │ ├── b107 │ │ └── test.dat │ ├── b108 │ │ └── test.dat │ ├── b109 │ │ └── test.dat │ └── b110 │ └── test.dat └── a500 ├── b100 │ └── test.dat ├── b101 │ └── test.dat ├── b102 │ └── test.dat ├── b103 │ └── test.dat ├── b104 │ └── test.dat ├── b105 │ └── test.dat ├── b106 │ └── test.dat ├── b107 │ └── test.dat ├── b108 │ └── test.dat ├── b109 │ └── test.dat └── b110 └── test.dat
#コード
python
1import os 2import numpy as np 3import pandas as pd 4import seaborn as sns 5 6box = np.zeros([8,21]) 7for aaa in xrange(350,525,25): 8 for bbb in xrange(110,130,1): 9 aaa=500 10 filename='/{0}/{1}/test.dat'.format(aaa,bbb) 11 aaa=(aaa-350)/25 12 bbb=(bbb-110) 13 box[aaa][bbb]=pd.read_csv('{0}'.format(filename),delimiter='\t',header=None,names=['1','2','3','4','5','6']) 14
#エラーメッセージ
------------------------------------- ValueErrorTraceback (most recent call last) in <module>() 4 aaa=(aaa-350)/25 5 bbb=(bbb-110) ----> 6 box[aaa][bbb]=pd.read_csv('{0}'.format(filename),delimiter='\t',header=None,names=['1','2','3','4','5','6']) ValueError: setting an array element with a sequence.
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/07/20 06:12