加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – Pandas series.rename给出TypeError:’str’对象不可

发布时间:2020-12-20 13:14:02 所属栏目:Python 来源:网络整理
导读:我无法弄清楚为什么会这样.我知道如果我以某种方式使用函数名称“shadowed”会发生这种情况.但是我怎么能在这种情况下呢? 如果我在终端中打开iPython然后键入: import pandas as pda = pd.Series([1,2,3,4])a.rename("test") 我得到TypeError:’str’对象
我无法弄清楚为什么会这样.我知道如果我以某种方式使用函数名称“shadowed”会发生这种情况.但是我怎么能在这种情况下呢?

如果我在终端中打开iPython然后键入:

import pandas as pd
a = pd.Series([1,2,3,4])
a.rename("test")

我得到TypeError:’str’对象不可调用.可能是什么原因造成的?

更长的错误消息:

/usr/local/lib/python2.7/site-packages/pandas/core/series.pyc in rename(self,index,**kwargs)
   2262     @Appender(generic._shared_docs['rename'] % _shared_doc_kwargs)
   2263     def rename(self,index=None,**kwargs):
-> 2264         return super(Series,self).rename(index=index,**kwargs)
   2265
   2266     @Appender(generic._shared_docs['reindex'] % _shared_doc_kwargs)

/usr/local/lib/python2.7/site-packages/pandas/core/generic.pyc in rename(self,*args,**kwargs)
    604
    605             baxis = self._get_block_manager_axis(axis)
--> 606             result._data = result._data.rename_axis(f,axis=baxis,copy=copy)
    607             result._clear_item_cache()
    608

/usr/local/lib/python2.7/site-packages/pandas/core/internals.pyc in rename_axis(self,mapper,axis,copy)
   2586         """
   2587         obj = self.copy(deep=copy)
-> 2588         obj.set_axis(axis,_transform_index(self.axes[axis],mapper))
   2589         return obj
   2590

/usr/local/lib/python2.7/site-packages/pandas/core/internals.pyc in _transform_index(index,func)
   4389         return MultiIndex.from_tuples(items,names=index.names)
   4390     else:
-> 4391         items = [func(x) for x in index]
   4392         return Index(items,name=index.name)
   4393

测试例here的参考.

解决方法

太棒了,感谢Nickil Maveli指出我需要0.18.1,现在它可以工作了.我的错误思考brew升级会让我找到最新版本.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读