首页 > 解决方案 > 转换列中的数据类型并替换 NaN 和其他值

问题描述

我在熊猫中有这个数据框,在某些单元格中具有 NaN 和“未知”值,并且所有列的数据类型为“对象”。我要摆脱这个令人不安的值(禁止掉线),并将列类型更改为适当的类型。我试过这段代码:

import numpy as np
movies_converted = movies.copy()
movies_converted.replace(to_replace='Unknown', value=np.nan, regex=True)
movies_converted.fillna("", inplace=True)
movies_converted['Title']=movies_converted['Title'].astype('str')
movies_converted['US Gross']=pd.to_numeric(movies_converted['US Gross'],errors='coerce').astype('int') 
movies_converted['Worldwide Gross']=pd.to_numeric(movies_converted['Worldwide Gross'], errors='coerce').astype('int')
movies_converted['Production Budget']=pd.to_numeric(movies_converted['Production Budget']).astype('int')
movies_converted['Release Date']=pd.to_datetime(movies_converted['Release Date'],errors='coerce')
movies_converted['Distributor']=movies_converted['Distributor'].astype('str')
movies_converted['Source']=movies_converted['Source'].astype('str')
movies_converted['Major Genre']=movies_converted['Major Genre'].astype('str')
movies_converted['Creative Type']=movies_converted['Creative Type'].astype('str')
movies_converted['Director']=movies_converted['Director'].astype('str')
movies_converted['Rotten Tomatoes Rating']=pd.to_numeric(movies_converted['Rotten Tomatoes Rating'])
movies_converted['IMDB Rating']=movies_converted['IMDB Rating'].str.replace(',',".").astype('float', errors='ignore')
movies_converted['IMDB Votes']=pd.to_numeric(movies_converted['IMDB Votes'],errors='coerce')
movies_converted

我是 Python 新手,所以我不知道自己做错了什么,但我总是遇到一些错误,现在是这个“ValueError:无法将非有限值(NA 或 inf)转换为整数”。请就我工作的最佳方式和我的错误提供一些建议。

标签: pythonpandasdataframetypesnan

解决方案


推荐阅读