我见过的大多数 csv 文件都存储这样的数组:
#x y
0 10
1 11
2 12
.
.
.
那么,为什么scipy.savetxt('scipy.txt', (x, y), header='x y', fmt='%g')
会x, y
这样存储:
# x y
0 1 2 3 4 5
10 11 12 13 14 15
虽然scipy.savetxt('y.txt', y, header='y', fmt='%g')
会给出:
# y
10
11
12
13
14
15
?
我必须使用scipy.savetxt('common.txt', scipy.column_stack((x,y)), header='x y', fmt='%g')
来获得更“常见”的格式。
请注意,要从“通用”文件中读取x
和读取:y
x, y = scipy.genfromtxt('common.txt', unpack=True)
xy = scipy.genfromtxt('common.txt')
x = xy[:,0]
y = xy[:,1]
xy = scipy.genfromtxt('common.txt', names=True)
x = xy['x']
y = xy['y']
甚至:
xy = scipy.genfromtxt('common.txt', names=True)
x, y = zip(*xy)
x, y = scipy.array(x), scipy.array(y)
从“scipy”文件:
x, y = scipy.genfromtxt('scipy.txt')
尽管:
xy = scipy.genfromtxt('test.txt', names=True)
会报错,所以我们不能使用header(反正这个header有真正的意义吗?)。