Python: how to add a column to a pandas dataframe between two columns?
我想在编号为columns的数据框中的两列之间的数据框中添加一列。在下面的数据框中,第一列对应于索引,而第一行对应于列的名称。
1 2 3 4 5 | df 0 0 1 2 3 4 5 1 6 7 4 5 2 1 2 0 3 1 3 3 4 3 9 8 4 3 6 2 |
我要把
1 2 3 4 5 | df 0 0 1 2 3 4 5 6 1 6 7 4 5 2 2 1 2 0 3 1 3 3 3 4 3 9 8 4 3 6 5 2 |
您也可以使用
1 | df.insert(4,"new_col_name", tmp) |
然后像@alexander解释的那样更改列名。
注意df.insert()没有inplace参数
所以会就地操作,不返回
即
首先将列连接到数据帧。
1 | df2 = pd.concat([df, pd.DataFrame(tmp)], axis=1) |
然后将列重命名为所需的最终结果。
1 | df2.columns = [0, 1, 2, 3, 4, 6, 5] |
现在对重命名的列进行排序。
1 2 3 4 5 6 7 | df2.sort_index(axis=1, inplace=True) >>> df2 0 1 2 3 4 5 6 0 6 7 4 5 2 2 1 1 0 3 1 3 3 3 4 2 9 8 4 3 6 5 2 |