10 列 x 100 行の csv ファイルを開こうとしていますが、最初に 100 列 x 10 行にスワップしたいと思います。これは、zip 関数を適切に使用したと思われます。次に、100 個の浮動小数点数を持つ 10 個の配列を作成します。それぞれで。
output = []
with open("undercurve.csv",'rU') as f5:
reader = csv.reader(f5, delimiter= ',')
reader1 = zip(*reader)
for row in reader1:
value = 0
for i in row:
value = float(i)
output.append(i)
ただし、実行すると
ValueError
Traceback (most recent call last)
174 else:
175 filename = fname
--> 176 exec compile(scripttext, filename, 'exec') in glob, loc
177 else:
178 def execfile(fname, *where):
C:\Users\Robert\Downloads\May.py in <module>()
142 value = 0
143 for i in row:
--> 144 value = float(i)
145 output.append(i)
146
ValueError: could not convert string to float.
これは前の部分からだと思います:
i = 0
with open("undercurve.csv",'w') as f3:
for i in undercurve_1:
mean = i
variance = .2
points = undercurve(1000)[:10]
for item in points:
x = str(item)
f3.write(x + ",")
f3.write("\n")
x = float(item) を使用しようとすると、エラーが発生します。
TypeError
Traceback (most recent call last)
174 else:
175 filename = fname
--> 176 exec compile(scripttext, filename, 'exec') in glob, loc
177 else:
178 def execfile(fname, *where):
C:\Users\Robert\Downloads\May.py in <module>()
130 for item in points:
131 x = float(item)
--> 132 f3.write(x + ",")
133 f3.write("\n")
134
TypeError: unsupported operand type(s) for +: 'float' and 'str'.
この状況で何をすべきか正確にはわかりません。
0.485863651248,0.0387115424974,0.287431660408,0.368734594828,0.618990463984,0.112220965205,0.418700402941,0.193754757929,0.573411295973,-0.192370410069,
-1.42282833703,-1.52808081061,-1.03071829996,-1.00330662742,-1.23896275168,-1.09742340137,-0.940839402591,-0.918657969034,-1.37832945051,-0.932452513278,
これらは undercurve.csv ファイルの最初の 2 行です。