如何用 NaN 替换缺失值
How do I replace missing values with NaN
我正在使用 IMDB 数据集进行机器学习,它包含许多缺失值,这些值输入为“\N”。特别是在包含电影发行年份的 StartYear 列中,我想将值转换为整数。我现在无法做到这一点,我可以删除这些值,但我想先看看为什么它们会丢失。我尝试了几件事但没有成功。
这是我最近的尝试:
这是一种不使用 replace
的方法:
import pandas as pd
import numpy as np
df_basics = pd.DataFrame({'startYear':['\N']*78760+[2017]*18267 + [2018]*18263+[2016]*17837+[2019]*17769+['1996 ','1993 ','2000 ','2019 ','2029 ']})
print(pd.value_counts(df_basics.startYear))
df_basics.loc[df_basics.startYear == '\N','startYear'] = np.NaN
print(pd.value_counts(df_basics.startYear, dropna=False))
输出:
NaN 78760
2017 18267
2018 18263
2016 17837
2019 17769
1996 1
1993 1
2000 1
2019 1
2029 1
我正在使用 IMDB 数据集进行机器学习,它包含许多缺失值,这些值输入为“\N”。特别是在包含电影发行年份的 StartYear 列中,我想将值转换为整数。我现在无法做到这一点,我可以删除这些值,但我想先看看为什么它们会丢失。我尝试了几件事但没有成功。
这是我最近的尝试:
这是一种不使用 replace
的方法:
import pandas as pd
import numpy as np
df_basics = pd.DataFrame({'startYear':['\N']*78760+[2017]*18267 + [2018]*18263+[2016]*17837+[2019]*17769+['1996 ','1993 ','2000 ','2019 ','2029 ']})
print(pd.value_counts(df_basics.startYear))
df_basics.loc[df_basics.startYear == '\N','startYear'] = np.NaN
print(pd.value_counts(df_basics.startYear, dropna=False))
输出:
NaN 78760
2017 18267
2018 18263
2016 17837
2019 17769
1996 1
1993 1
2000 1
2019 1
2029 1