在Python中将矩阵(CSV)转换为3列列表

时间:2016-12-09 22:45:07

标签: python arrays list csv matrix

我需要将matriz转换为3列列表。我已经在Excel中完成了这个,但由于我的矩阵太大了,我需要在python中完成。

我有这样的事情:

     A   B   C  ...
a    1   3   4  ...
b    4   0   6  ...
c    9   8   0  ...

在CSV文件中输出应该是这样的(忽略0):

Source   Target    Weight
  a        A          1
  a        B          3
  a        C          4
  b        A          4
  b        C          6
  c        A          9
  c        B          8

请问有人帮我一把吗?

非常感谢!!!

2 个答案:

答案 0 :(得分:0)

如果您正在使用Pandas,您可以使用特殊方法.to_csv(),它可以将csv输出到文件。您也可以重命名列。

答案 1 :(得分:0)

这很完美!!

In [335]: df.stack().reset_index().rename(columns={'level_0':'Source','level_1':'Target', 0:'Weight'})

Out[335]:

    Source Target  Weight
0      a      A       1
1      a      B       3
2      a      C       4
3      b      A       4
4      b      B       0
5      b      C       6
6      c      A       9
7      c      B       8
8      c      C       0
相关问题