我的dat文件包含以下格式的数据:
0.23548 0.34938 0.54311 0.20902 0.52414 0.323418 1
对于每个观察并由每条线分开。如何将其转换为数组,前6个变量为X' s,最后一个变量为Y?
再次感谢你!
答案 0 :(得分:0)
问题有点不清楚,但无论如何我都会尝试回答。
如果输入文件具有以下结构(没有第1行和第3行):
X1 X2 X3 X4 X5 X6 Y(1-6)
0.23548 0.34938 0.54311 0.20902 0.52414 0.323418 1
X7 X8 X9 X10 X11 X12 Y(7-12)
0.23548 0.34938 0.54311 0.20902 0.52414 0.323418 1
然后以下代码应该工作。 它返回一个元组列表(Xn,Yn)。
points = []
for line in open("file.dat", "r").readlines():
fields = map(float, line.split())
xs, y = fields[:-1], fields[-1]
for x in xs:
points.append( (x,y) )
print points