Python 熊猫将列解释为数据帧而不是列,并返回错误
我正在使用一个数据帧,不幸的是我不能在这里共享。我正在为我的所有列运行以下命令Python 熊猫将列解释为数据帧而不是列,并返回错误,python,pandas,series,Python,Pandas,Series,我正在使用一个数据帧,不幸的是我不能在这里共享。我正在为我的所有列运行以下命令 for col in df.columns: print(type(df[col])) df[col] = pd.to_numeric(df[col], errors = 'coerce') 但是我得到了以下错误 > --------------------------------------------------------------------------- TypeError
for col in df.columns:
print(type(df[col]))
df[col] = pd.to_numeric(df[col], errors = 'coerce')
但是我得到了以下错误
> --------------------------------------------------------------------------- TypeError Traceback (most recent call
> last) <ipython-input-40-2dc7ceea54d2> in <module>()
> 27 for col in df.columns:
> 28 print(type(df[col]))
> ---> 29 df[col] = pd.to_numeric(df[col], errors = 'coerce')
> 30
> 31
>
> ~\Anaconda3\lib\site-packages\pandas\core\tools\numeric.py in
> to_numeric(arg, errors, downcast)
> 118 values = np.array([arg], dtype='O')
> 119 elif getattr(arg, 'ndim', 1) > 1:
> --> 120 raise TypeError('arg must be a list, tuple, 1-d array, or Series')
> 121 else:
> 122 values = arg
>
> TypeError: arg must be a list, tuple, 1-d array, or Series
-------------------------------------------------------------类型错误回溯(最近的调用)
>最后)在()
>27对于df列中的列:
>28打印(类型(df[col]))
>-->29 df[col]=pd.to_numeric(df[col],errors='concure')
> 30
> 31
>
>中的~\Anaconda3\lib\site packages\pandas\core\tools\numeric.py
>至数值(参数、错误、向下广播)
>118 values=np.array([arg],dtype='O')
>119 elif getattr(arg,'ndim',1)>1:
>-->120 raise TypeError('参数必须是列表、元组、1-d数组或序列')
>121.其他:
>122个值=arg
>
>TypeError:arg必须是列表、元组、1-d数组或序列
我相信,因为Python将我的列解释为数据帧。实际上,命令print(type(df[col])返回
我已经使用python一段时间了,这是我第一次看到这种问题!这里有什么问题吗?好的,我想出来了。其中一列有重复的。如果Pandas看到两个同名列,则将它们解释为Pandas数据帧 好吧,我想出来了。其中一列有重复的。如果Pandas看到两个同名列,则将它们解释为Pandas数据帧
<class 'pandas.core.frame.DataFrame'>