当我想读取一个csv文件并且它在某个地方有一个NaN时,我如何在pandas中解决这个问题?
它返回:
ValueError:Integer列在第22列中具有NA值
def read_csv_file(filename):
dtypes = {
'transaction': int,
'kev': int,
'companyName': str,
'companyOwner': str,
'companyCountry': str,
}
# Importar el archivo CSV especificando los tipos de datos
data = pd.read_csv(filename, dtype=dtypes, na_values={'tradedate': -1})
return data.to_dict('records')
问题是,我想标准化它,但我不知道所有数据类型或列中的哪一个会有这个问题
1条答案
按热度按时间bqf10yzr1#
对于pandas,您可以使用
.fillna()
方法来处理NaN值。如果你想用0填充数据集中的NaN,
还有
.ffill
和.bfill
,它们可以向前或向后填充。另一个值得一提的是
.interpolate
,默认情况下它会对缺失值进行线性插值。同时尝试使用不同的数据类型,如
Int64