首页 > 解决方案 > 如何使用默认值而不是错误对熊猫数据框列进行切片

问题描述

我有以下一组数据框

df1 = pd.DataFrame({'col1':[1234, 12345], 'col2':[123, 345], 'col3':[1000,1000] })
df2 = pd.DataFrame({'col1':[1234, 12345], 'col2':[123, 345], 'col3':[1000,1000], 'col4':[1000,1000] })

在此处输入图像描述

我想把它们切成薄片,这样我就只有['col1', 'col3', 'col4']

在此处输入图像描述

虽然我可以使用 slicing 来实现这一点,但在不存在df[['col1','col3', 'col4']]的情况下,它会给出错误。col4是否可以设置默认值nil,或者0如果 col4 不存在,以便在使用 df1 运行切片时得到以下信息?

在此处输入图像描述

标签: pythonpandas

解决方案


利用:

df = df.reindex(['col1','col3', 'col4'], axis=1)

或者:

df = df.reindex(['col1','col3', 'col4'], axis=1, fill_value=0)

推荐阅读