如何打印在 csv 文件中转置的数组列表
How to print a list of arrays transposed in a csv file
我有一个包含以下形式的数组(类型 = numpy.ndarray)的列表:
final = [[a, b, c, d],[e, f, g, h],[i, j, k, l]]
我想将它们转置打印在 csv 文件中,格式如下:
a, e, i
b, f, j
c, g, k
d, h, l
其中 a、b、c...j、k、l 都是字符串 (numpy.string_)。
我试图将其作为包含列表的列表(在另一个 post 中回答)来处理,但它不起作用,而是创建一个空的 csv 文件。
我的尝试是这个:
csvfile=open('new.csv','wb')
wr = csv.writer(csvfile)
final=map(list, zip(*final))
wr.writerows(final)
csvfile.close()
有人可以提供一些建议吗?
试试这个:
with open('new.csv', 'wb') as f:
wr = csv.writer(f)
wr.writerows(map(list, zip(*final)))
您可以将列表转换为 numpy 数组:final = np.array(final)
然后使用转置方法 numpy.ndarray.T
这样:
final.T = [[a, e, i],[b, f, j],[c, g, k],[d,h,l]]
所以:
import numpy as np
np.savetxt("foo.csv", np.array(final).T, delimiter=",")
我有一个包含以下形式的数组(类型 = numpy.ndarray)的列表:
final = [[a, b, c, d],[e, f, g, h],[i, j, k, l]]
我想将它们转置打印在 csv 文件中,格式如下:
a, e, i
b, f, j
c, g, k
d, h, l
其中 a、b、c...j、k、l 都是字符串 (numpy.string_)。 我试图将其作为包含列表的列表(在另一个 post 中回答)来处理,但它不起作用,而是创建一个空的 csv 文件。 我的尝试是这个:
csvfile=open('new.csv','wb')
wr = csv.writer(csvfile)
final=map(list, zip(*final))
wr.writerows(final)
csvfile.close()
有人可以提供一些建议吗?
试试这个:
with open('new.csv', 'wb') as f:
wr = csv.writer(f)
wr.writerows(map(list, zip(*final)))
您可以将列表转换为 numpy 数组:final = np.array(final)
然后使用转置方法 numpy.ndarray.T
这样:
final.T = [[a, e, i],[b, f, j],[c, g, k],[d,h,l]]
所以:
import numpy as np
np.savetxt("foo.csv", np.array(final).T, delimiter=",")