代码之家  ›  专栏  ›  技术社区  ›  John Philips

Python中的重命名函数

  •  3
  • John Philips  · 技术社区  · 1 年前

    现在我正试着学习用蟒蛇包装熊猫。 但是使用重命名功能时,我遇到了一些问题。

            mushroom = pd.read_csv('./mushroom/agaricus-lepiota.data', header=None)
            mushroom = pd.DataFrame(mushroom)
            mushroom.rename(columns={'0', 'edibility', '5', 'odor'})
    

    我正在尝试将列名0、5重命名为“可食用性”、“气味”。 但我得到了它的错误,不允许得到可调用的集合函数。 我该怎么修?

    3 回复  |  直到 1 年前
        1
  •  2
  •   Данил Коршунов    1 年前

    我可以帮你。 你在第三排似乎漏掉了一些语法。 蘑菇.rename(列={0:“可食用性”,5:“气味”})

    简而言之,在索引重命名的情况下,不要使用字符串符号,也不要忘记:语法。 祝你好运

        2
  •  2
  •   Deirdre O'Connor    1 年前

    Rename的作用就像一个函数,它应该接收一个字典,其中包含将旧列名映射到新列名的对。一个小的更改将修复您的代码,使其按您期望的方式工作。

    mushroom.rename(columns={0: 'edibility', 5: 'odor'}, inplace=True)
    
    

    正在添加 inplace=True 意味着该列已重命名,不需要重新分配数据帧。以下是一种替代方法,如果您想将具有重命名列的数据帧分配给另一个变量名,则该方法非常有用:

    mushroom = mushroom.rename(columns={0: 'edibility', 5: 'odor'})
    
        3
  •  2
  •   Ray Diamond    1 年前

    试试这个。

    mushroom = pd.read_csv('./mushroom/agaricus-lepiota.data', header=None)
    mushroom = pd.DataFrame(mushroom)
    mushroom.rename(columns={'0': 'edibility', '5': 'odor'})
    

    mushroom = pd.read_csv('./mushroom/agaricus-lepiota.data', header=None)
    mushroom = pd.DataFrame(mushroom)
    mushroom.rename(columns={'0': 'edibility'})
    mushroom.rename(columns={'5': 'odor'})