Python:Numpy,数据genfromtxt无法进行转置

时间:2014-06-18 18:46:08

标签: python csv numpy

例如,如果我有一个data.csv文件,它看起来像:

    A   B
1|  1   2
2|  3   4

如果我以这种方式加载这些数据:

import numpy as np
from StringIO import StringIO
with open('test.csv', 'rb') as text:
    b = np.genfromtxt(   StringIO(text.read()), 
                         delimiter=",",
                         dtype = [('x', int), ('y', int)]) ##<=== in my case
                         ## I want may columns dtype
                         ## in different format
print b.tranpose()

它仍然像我这样,没有被转置。

[(1,2) 
 (3,4)]

但是,如果我这样做:dtype ='str'(这意味着所有列具有相同的格式 np.transpose()效果很好。

===============================================

但如果我这样做,就像:

import numpy as np
a = np.array([(1,2), (3,4)])
print a.transpose()

它可以正常工作

=======我的问题======= 如果我从txt或csv加载numpy数据,并定义每个列的数据类型。有没有办法让numpy数据正常工作?

1 个答案:

答案 0 :(得分:0)

这是我们的目的,请参阅document

  

Tself.transpose()相同,只是如果self.ndim&lt;返回self。 2。

ndim 1 b array (2,2)(您可能认为它的形状为(2,),但其形状为{ {1}},请注意),所以T会自行返回。