python - Pandas数据框如何删除和重命名列

标签 python pandas dataframe slice rename

对于如下数据框,我尝试 1) 删除 B 列,因为它不在 Marker 的行值中,2) 然后将 A、C、D 列重命名为新根据New_Name 列下的值命名 ColA、ColB、ColC。有什么方法可以做到这一点?我是否需要将列 New_Name 放入列表中并以某种方式迭代 Dataframe 列名称?非常感谢您的帮助。

          A     B     C      D        Marker   New_Name
         1.0   0.0   0.0    1.0        A          ColA
         1.0   0.0   0.0    0.0        C          ColC
         0.0   0.0   0.0    0.0        D          ColD

最佳答案

s=df.reindex(columns=df.Marker).\
    rename(columns=dict(zip(df.Marker,df.New_Name))).\
     rename_axis(None,axis=1)
s
   ColA  ColC  ColD
0   1.0   0.0   1.0
1   1.0   0.0   0.0
2   0.0   0.0   0.0

关于python - Pandas数据框如何删除和重命名列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61450791/

相关文章:

python - 如何根据电子邮件 ID 获取行,其中计数为最大或最新日期

python - 在 Spark 中创建分箱直方图

python - 使用不同的 DataFrame 更改 pandas DataFrame 切片中的值

javascript - 在 JavaScript 函数的 Django 模板中转义字符串参数

python - 如何对不规则时间戳列表进行重采样/下采样?

python - 使用 eval 是不好的,但是我还能怎么做呢?

python - 有没有一种简单的方法可以消除 Python-pandas 中 DataFrame 中的重复行?

python - 从轮廓获取四边形的角

python - Pandas GroupBy 值的频率

python - Pandas 在非唯一值上自连接