首页 > 解决方案 > Python中pandas列的条件数据转换

问题描述

我有一个带有字符串的列。该字符串将有数字或日期。所以我需要在评估它包含的数据类型之后将该字符串转换为正确的格式。

此代码不起作用:

    temp_df['new_column']=pd.np.where(pd.to_numeric(temp_df['date_or_number'], errors='coerce').notnull().all()
                                            ,pd.to_numeric(temp_df['date_or_number'])
                                            ,pd.to_datetime(temp_df['date_or_number']))

TypeError:无效的类型提升

我收到上面的错误。您将使用什么方法来实现这一目标?编辑:为了澄清,该列不会同时包含数字或日期,它将始终包含仅包含数字的字符串或仅包含日期的字符串。永远不要日期和数字。

标签: pythonpandas

解决方案


推荐阅读