【发布时间】:2021-10-13 13:28:51
【问题描述】:
我有一个 4 列的 Excel 表,文件名、SNR、动态范围、级别。
| Filename | SNR | Dynamic Range | Level |
|---|---|---|---|
| 1___SLATE_FPGA_BESBEV_TX_AMIC_9.6MHz_Normal_IN1_G0_0_HQ_DEC0_FS8_HPOF.xlsx | 5 | 11 | 8 |
| 19___SLATE_FPGA_BESBEV_TX_AMIC_9.6MHz_Normal_IN1_G0_0_HQ_DEC0_FS32_HPOF.xlsx | 15 | 31 | 23 |
| 10___SLATE_FPGA_BESBEV_TX_AMIC_9.6MHz_Normal_IN1_G0_0_HQ_DEC0_FS16_HPOF.xlsx | 10 | 21 | 24 |
| 28___SLATE_FPGA_BESBEV_TX_AMIC_9.6MHz_Normal_IN1_G0_0_HQ_DEC0_FS48_HPOF.xlsx | 20 | 41 | 23 |
| 37___SLATE_FPGA_BESBEV_TX_AMIC_9.6MHz_Normal_IN1_G0_0_HQ_DEC0_FS8_HP4.xlsx | 25 | 51 | 12 |
我需要重新组织表格的第一列 Xls 文件名,以使粗体部分按从小到大的顺序排列。 即
| Filename | SNR | Dynamic Range | Level |
|---|---|---|---|
| 1___SLATE_FPGA_BESBEV_TX_AMIC_9.6MHz_Normal_IN1_G0_0_HQ_DEC0_FS8_HPOF.xlsx | 5 | 11 | 8 |
| 37___SLATE_FPGA_BESBEV_TX_AMIC_9.6MHz_Normal_IN1_G0_0_HQ_DEC0_FS8_HP4.xlsx | 25 | 51 | 12 |
| 10___SLATE_FPGA_BESBEV_TX_AMIC_9.6MHz_Normal_IN1_G0_0_HQ_DEC0_FS16_HPOF.xlsx | 10 | 21 | 24 |
| 19___SLATE_FPGA_BESBEV_TX_AMIC_9.6MHz_Normal_IN1_G0_0_HQ_DEC0_FS32_HPOF.xlsx | 15 | 31 | 23 |
| 28___SLATE_FPGA_BESBEV_TX_AMIC_9.6MHz_Normal_IN1_G0_0_HQ_DEC0_FS48_HPOF.xlsx | 20 | 41 | 23 |
我不想更改实际的 excel 文件。我希望使用 pandas,因为我稍后会做一些其他操作。
我试过了
df.sort_values(by='Xls Filename', key=lambda col: col.str.contains('_FS'),ascending=True)
但是没有用。
提前谢谢你!
【问题讨论】: