Python Pandas: 'numpy.ndarray' object has no attribute 'apply'

馋奶兔 提交于 2019-12-10 14:44:55

问题


I have a dataframe from which I picked unique values, and it resulted in an ndarray ("unManager") of shape (1187,)... just one column.

Now, I have written a function to group some rows of the dataframe, do calculations and add values in the ndarray.

I am using apply on the ndarray ("unManager") for that, and am getting the following error:

AttributeError                            Traceback (most recent call last)
<ipython-input-48-ff7e78ab33a7> in <module>()
----> 1 unManager.apply(runThis, axis=0)

AttributeError: 'numpy.ndarray' object has no attribute 'apply'

Now, when I am trying to convert the ndarray ("unManager") to a dataframe, through:

dfs = pd.DataFrame(unManager,index=unManager[0])

I am getting the following error:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-55-3ee3d2605321> in <module>()
----> 1 dfs = pd.DataFrame(unManager,index=unManager[0])
.
.
TypeError: Index(...) must be called with a collection of some kind, 'actama99,CLE' was passed

'actama99,CLE' here is first value of the ndarray ("unManager") of shape (1187,).

Can someone please tell me what am I doing wrong? TIA


回答1:


dfs = pd.DataFrame(unManager,index=unManager[0])

unManager[0] returns a scalar and that is not a collection.

you want

dfs = pd.DataFrame(dict(unManagers=unManager))


来源:https://stackoverflow.com/questions/40224987/python-pandas-numpy-ndarray-object-has-no-attribute-apply

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!