python - 如何将 3 维 NumPy 数组转换为数据框?
问题描述
如何将 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
推荐阅读
- architecture - 我想解释一下我们可以在哪里使用微服务而不是容器以及它的一些应用程序
- java - Spring Boot 的 convertAndSendToUser 不起作用
- javascript - 未捕获的语法错误:请求的模块“../user_module/User.js”未提供名为“用户”的导出 main.js:1
- hive - 使用分区的雪花到 Hive 数据移动
- javascript - 如何使用 JavaScript 将文本从对应的地址字段复制到永久地址字段?
- kubernetes - 使用 calico 的适当 coredns 配置是什么?
- firebase - Firestore 是否在每次构建页面时执行读取?
- python - 这条鳕鱼是真的,但在这个网站('hepsiburada.com')中返回 403。我该如何解决这个问题?
- c# - 带有表达式的通用存储库“查找”方法
- python - 为我托管在 herokou 上时,client.fetch_user() 不起作用