猿问

在我的 df 中只保留那些在 df.index 和 df.columns 中常见的列名

我有一个 df,其中索引和列名是 6 位邮政编码,125 个邮政编码在 df.index 和 df.columns 中都很常见,现在在我的 df 中我只想要那些 125x125 值。通过使用以下代码,我能够从索引中删除不需要的邮政编码

df = df[df.index.isin(df.columns)]

但是对于当我使用相同类型的代码时的列

df = df[df.columns.isin(df.index)]

它的投掷错误

ValueError: Length mismatch: Expected axis has 813 elements, new values have 125 elements

你们能帮我解决这个问题吗??


德玛西亚99
浏览 369回答 1
1回答

www说

DataFrame.loc要按列过滤,请使用:for 获取所有行和过滤器列名称的掩码:df = df.loc[:, df.columns.isin(df.index)]
随时随地看视频慕课网APP

相关分类

Python
我要回答