繁体   English   中英

如何将 3 维 NumPy 数组转换为数据帧?

[英]How do I convert a 3-dimensional NumPy array into a dataframe?

如何将 3 维 NumPy 数组 [sample_index, channel, data] 转换为数据帧,每个样本作为一行,通道作为列?

numpy 数组如下所示:

import numpy as np
np.random.uniform(-25, 100, size=(6400,3,100*100))

咱们试试吧:

samples, size = 6, 2*2

data = np.arange(samples*size *3).reshape(samples, 3, size)

pd.DataFrame(data.swapaxes(1,2).reshape(-1,3),
             np.repeat(np.arange(samples), size)
            )

输出,这里,每个索引代表一个样本:

    0   1   2
0   0   4   8
0   1   5   9
0   2   6  10
0   3   7  11
1  12  16  20
1  13  17  21
1  14  18  22
1  15  19  23
2  24  28  32
2  25  29  33
2  26  30  34
2  27  31  35
3  36  40  44
3  37  41  45
3  38  42  46
3  39  43  47
4  48  52  56
4  49  53  57
4  50  54  58
4  51  55  59
5  60  64  68
5  61  65  69
5  62  66  70
5  63  67  71

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM