在数据框中移动列而不删除列

问题描述 投票:0回答:1

这是我的数据框:

A B C
第一 要删除的行 行移
第二个 要删除的行 行移

我想要这个输出:

A B C
第一 行移
第二个 行移

我尝试了这段代码: df.shift(-1, 轴=1)

A B C
要删除的行 行移
要删除的行 行移

事实是,有没有办法保持第一列不被修改?

python pandas dataframe shift
1个回答
0
投票

您只能移动 B 和 C 列

import pandas as pd

# Create the DataFrame
data = {
    'A': ['First', 'Second'],
    'B': ['row to delete', 'row to delete'],
    'C': ['row to shift', 'row to shift']
}

df = pd.DataFrame(data)

print(df)

# Shift only the 'B' and 'C' columns
df[['B', 'C']] = df[['B', 'C']].shift(-1, axis=1)

# Fill the last column ('C') with NaN, as shifting left removes values
df['C'] = df['C'].fillna('')

print(df)

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.