我试图转置大约60 * 75的数据集。我在迭代矩阵以将其转换为75 * 60顺序时遇到了麻烦。每列都有不同类型的数据(数字,单词,混合,URL等)。我尝试了以下代码。但它只是给我翻译的第一列。
f= open('input.txt', "rb")
fw=open("output.txt", "wb")
l=f.read()
for row in l:
print ''.join(row)
p= [[row[i] for row in l] for i in range(75)]
print p
Alternaticely我试过
a = np.array(l)[np.newaxis]
print a.T
他们都没有给我完整的转置矩阵。
我甚至尝试过zip(* l)和map(zip(* l))。
感谢您的帮助。 谢谢。
答案 0 :(得分:3)
f.read()
是一个包含所有文件内容的巨型字符串。它不是某种结构化数据格式;特别是,for row in l
迭代原始字符而不是有用数据行。
如果你想要更有用的东西,csv
模块可能会有所帮助,或者像numpy.loadtxt
这样的东西,这取决于文件实际包含的格式。