使用 Excel 或 Python 将具有多列的数组合并为一列

Combining an array with multiple columns into a single column using Excel or Python

我正在处理 Excel 中的大量值。这些值是垂直组织的(每列从顶部开始)并跨越 194 列。我想将每一列拼接成一列(这样我就可以 copy/paste 将所有值放入一个单独的程序中进行额外计算)。基本上,从第一列开始,我想获取右侧的列并将值添加到左侧的列(以便添加的列顶部的值位于列底部的值之后在它之前)。我想对电子表格中的所有列执行此操作。

我无法在 Excel 中或通过我的 Jupyter notebook 弄清楚如何执行此操作(在将 Excel 文件转换为 .csv 并尝试使用循环来将文件拼接在一起)。

如有任何帮助,我们将不胜感激!

如果您可以使用 Power Query(在 Excel 2010+ 和 Office 365 中可用),只需几行代码即可完成。

let

//change the table name in the next line to the real table name in your worksheet
    Source = Excel.CurrentWorkbook(){[Name="Table3"]}[Content],
    oneCol = Table.FromList(List.Combine(Table.ToColumns(Source)),Splitter.SplitByNothing())
in
    oneCol

如果您的列的行数不同,您可能需要 RemoveNulls 或根据数据的性质和所需的输出进行一些其他处理

例如:

oneCol=Table.FromList(List.RemoveNulls(List.Combine(Table.ToColumns(Source))),Splitter.SplitByNothing())