如何在循环中列堆叠数组?

我有一个生成二维数组的函数。我在 for 循环中运行该函数以生成数据。循环完成后,我希望将这些二维数组中的每一个组合起来(水平堆叠),以便我可以将其导出到 csv 文件。


我发现 column_stack 函数对于按照我想要的方式堆叠数组很有用。假设“结果”是我的函数返回的二维数组。如果我有一个初始数组,我可以按照我想要的方式堆叠它。此时我没有初始数组。

但是,有什么方法可以在 for 循环中生成一个数组并从以下迭代中附加其他二维数组


np.column_stack((results,results))



array([[-2.7532e-03,  1.1973e-06, -2.7532e-03,  1.1973e-06],

       [ 9.7603e-02,  1.9542e-06,  9.7603e-02,  1.9542e-06],

       [ 1.9770e-01,  2.0952e-06,  1.9770e-01,  2.0952e-06],

       [ 2.9758e-01,  2.1637e-06,  2.9758e-01,  2.1637e-06],

       [ 3.9787e-01,  1.4734e-06,  3.9787e-01,  1.4734e-06],

       [ 4.9795e-01,  1.3670e-06,  4.9795e-01,  1.3670e-06],

       [ 5.9790e-01,  2.0252e-06,  5.9790e-01,  2.0252e-06],

       [ 6.9817e-01,  2.1771e-06,  6.9817e-01,  2.1771e-06],

       [ 7.9837e-01,  1.2704e-06,  7.9837e-01,  1.2704e-06],

       [ 8.9822e-01,  2.1794e-06,  8.9822e-01,  2.1794e-06],

       [ 9.9847e-01,  1.4442e-06,  9.9847e-01,  1.4442e-06]])

这就是我正在尝试做的事情:


from xtralien import *

from numpy import *



### 1.Sweep Settings ###

vstart = 0  #Starting Voltage (V)

vend = 1    #End Voltage (V)

vstep = 0.1 #Step Size (V)

smu = 'SMU1'


### 2.Create Variables ###

vnum = ((vend-vstart)/vstep) + 1 #Calculate number of steps in sweep

volts = linspace(vstart,vend,vnum) #Create voltage list


### 3. Perform Sweep ###

with X100.USB('COM5') as Dev1: #Connect to the Device via USB

    for i in [1,2,3,4,5]: ################This list is just an example. in the program it might be of any length!!

        Dev1['SMU2'].oneshot(i)

        results = vstack([Dev1[smu].oneshot(v) for v in volts]) 

我希望将所有结果叠加成一个。提前致谢


幕布斯6054654
浏览 375回答 1
1回答

慕勒3428872

我建议使用 pandas 并将数据附加到 for 循环中的数据帧,然后在后记中连接数据。所以像这样的事情。import pandas as pdAJ=[]for i in [1,2,3,4,5]:     Dev1['SMU2'].oneshot(i)     results = vstack([Dev1[smu].oneshot(v) for v in volts])     AJ.append(results) AJ=pd.concat(AJ)请注意,在 for 循环之后,AJ 将只是一个可以以多种不同方式组合的数据帧的数据帧。有关更多信息,该网站很有用https://pandas.pydata.org/pandas-docs/stable/user_guide/merging.html
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python