如果多数为零,如何处理数据?数据清洗

How to handle data if majority equals zero? Data cleaning

我是初学者,我正在探索 TMDB 10000 电影数据集,我发现预算和收入列如下:

b_0 = df[df['budget']==0].shape[0]/df.shape[0]*100
print('percentage of zero budget movies: ',b_0,'%')

零预算电影的百分比:52.425218591808566 %

b_r_0 = df[(df['revenue']==0) & (df['budget']==0)].shape[0]/df.shape[0]*100

零收入和预算电影的百分比:43.26737229636448 %

r_0 = df[df['revenue']==0].shape[0]/df.shape[0]*100
print('percentage of zero revenue movies: ',r_0,'%')

零收入电影的百分比:55.37045559134837 %

我确定 budget/revenue 不能等于零,计算的统计数据(平均值、中位数、四分位数)由于零值而有偏差,所以我不能用它们来替换,我不能删除超过 40% 的数据。 我该如何解决这个问题?

数据来源:https://www.google.com/url?q=https://d17h27t6h515a5.cloudfront.net/topher/2017/October/59dd1c4c_tmdb-movies/tmdb-movies.csv&sa=D&ust=1532469042115000

要知道什么是最佳解决方案,您必须了解数据来源的真实世界。

平均数或中位数通常是最好的。

您最好先用 Null 替换零,然后用中位数或均值填充 Null。

如果您需要代码来执行此操作 - 让我知道