python-3.x - 如何在第一列下方的数据框中添加所有列
问题描述
我有以下格式的excel数据:
Index 1 1 1 1
A x x x x
B x x x x
C x x x x
其中 x 是一些时间戳,但由于我知道对我的程序有意义的数据将类似于:
Index 1
A x
B x
C x
A x
B x
C x
.
.
4 times
然后我会得到 x 即时间戳的序列有什么办法可以实现这个..?x 只是一个例子,在整个过程中并不相同。
编辑 - - -
TRAIN NO 901 902 901 902 901 902
DA 05:40:00 06:00:00 06:12:00 06:24:00 06:36:00 06:48:00
NWWI 05:40:00 06:02:46 06:14:36 06:26:36 06:38:36 06:50:36
NFHH 06:07:20 06:19:00 06:31:00 06:43:00 06:55:00
NFHH 06:00:00 06:12:00 06:24:00 06:36:00 06:48:00 07:00:00
NWWI 06:04:34 06:16:24 06:28:24 06:40:24 06:52:24 07:04:24
DA 06:07:20 06:19:00 06:31:00 06:43:00 06:55:00 07:07:00
从这个表中,我需要所有同名的列都低于第一个列,并将其应用于所有列,这样我只有一列说 901 名称,并且关联的行数据应按行复制,因为它是统一的,所以我知道它是可能但不知道如何
解决方案
您可以将列 (0,1,2) 与 (0,3,4)、(0,5,6) 等垂直连接起来。
数据
df.columns = ["TRAIN NO"] + ["901", "902"] * 3
print(df)
TRAIN NO 901 902 901 902 901 902
0 DA 05:40:00 06:00:00 06:12:00 06:24:00 06:36:00 06:48:00
1 NWWI 05:40:00 06:02:46 06:14:36 06:26:36 06:38:36 06:50:36
2 NFHH 06:07:20 06:19:00 06:31:00 06:43:00 06:55:00 None
3 NFHH 06:00:00 06:12:00 06:24:00 06:36:00 06:48:00 07:00:00
4 NWWI 06:04:34 06:16:24 06:28:24 06:40:24 06:52:24 07:04:24
5 DA 06:07:20 06:19:00 06:31:00 06:43:00 06:55:00 07:07:00
代码
df_ans = pd.concat([df.iloc[:, [0, 2*i+1, 2*i+2]] for i in range(int(len(df.columns)/2))], axis=0)
print(df_ans)
TRAIN NO 901 902
0 DA 05:40:00 06:00:00
1 NWWI 05:40:00 06:02:46
2 NFHH 06:07:20 06:19:00
3 NFHH 06:00:00 06:12:00
4 NWWI 06:04:34 06:16:24
5 DA 06:07:20 06:19:00
0 DA 06:12:00 06:24:00
1 NWWI 06:14:36 06:26:36
2 NFHH 06:31:00 06:43:00
3 NFHH 06:24:00 06:36:00
4 NWWI 06:28:24 06:40:24
5 DA 06:31:00 06:43:00
0 DA 06:36:00 06:48:00
1 NWWI 06:38:36 06:50:36
2 NFHH 06:55:00 None
3 NFHH 06:48:00 07:00:00
4 NWWI 06:52:24 07:04:24
5 DA 06:55:00 07:07:00
推荐阅读
- r - 使用 cairo 导出绘图 png
- macos - Bowtie2 错误:“不存在或不是 Bowtie 2 索引”
- php - 如何让工作人员在 PHP - Heroku 中持续运行?
- python-3.x - 如何在 apache2 上运行 FastAPI?
- android - 显示警报对话框的 Activity 方法的 Android Mockito 测试
- node.js - 已解决 - 条带克隆客户并在关联账户上创建直接费用
- reactjs - 'ReferenceError: cptable is not defined' 运行 Jest 测试时,生成 excel 工作表的实际代码工作正常
- mysql - MySQL - 具有空字段的 MIN 和 MAX 值
- python-3.x - python3:在没有超级用户权限的情况下附加到自定义 /var/log/mylog
- google-sheets - 如何使用 VLOOKUP 将多个匹配的列返回到 1 列