使用其他列的名称作为位置将列插入到其他列之间的python数据帧中?

2024-09-28 05:22:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个excel文件,我已将其转换为数据框。我想在其他列之间插入一列(或两列,视情况而定)

例如: 我有以下专栏: 桌椅床

我想在椅子和床之间插入柱草和柱水。我试过:

df.insert(loc=2, column='grass', value='')
df.insert(loc=3, column='water', value='')

这是可行的,但是如果数据源中的列在某些时候发生了变化,并且这些列是这样的:沙发、厨房、桌子、椅子、床

我仍然想在椅子和床之间插入这些新列,但不想每次都重新编写代码(因为……自动化)。有没有一种方法可以让代码在不使用位置号的情况下查找列名并在它们之间插入新列,这样列顺序或列数就无关紧要了


Tags: 文件数据代码dfvalue情况columnexcel
2条回答

您可以找到“椅子”列的位置,然后将其添加到后面

df.insert(df.columns.get_loc('Chair') + 1, column='grass', value='')
cLoc1 = df.columns.get_loc("Chair")
cLoc2 = df.columns.get_loc("Bed")
df.insert(loc=cLoc1, column='grass', value='')
df.insert(loc=cLoc2, column='water', value='')

基本上,您可以获得要查找的列的位置,然后将其传递给代码

相关问题 更多 >

    热门问题