unzipは*zip
def data_range_csv_make_kai(self,file_name):
with open(file_name, encoding="cp932") as f:
lineral= f.read().splitlines()
del lineral[0:320]
#20行削除
data=
for line in lineral:
if line:
data.append(line)
else:
breakkara=
for line in data:
element=re.split(",", line)
kara.append(element)
unzip=list(zip(*kara))
#unzipは二次元配列。unzip[0]がx、unzip[1]がy
x_kari= list(unzip[0])
y_kari= list(unzip[1])
x_true= ; y_true=
for i ,j in zip(x_kari,y_kari):
x_true.append(float(i))
y_true.append(float(j))
self.x=np.array(x_true)
self.y=np.array(y_true)
解説
ファイルを読み込んで一行ごとにリストに格納。
if (リストの要素)はリストの要素が空の時はFALSEを返すことを利用して、空白の行が登場するまでデータを格納したリストを作成する。
ここまでで
[ "12,12", "342,32", "34,43"]
みたいな状態になっているからunzipする。(zipの反対)そのあとで、
文字列の数字状態になっているからfloatに変換している。