如何在python中为分类数据输入空值?
我在R中看到,分类数据的插补是通过DMwR、Caret等包直接完成的,而且我也有如何在python中为分类数据输入空值?,python,scikit-learn,data-science,imputation,Python,Scikit Learn,Data Science,Imputation,我在R中看到,分类数据的插补是通过DMwR、Caret等包直接完成的,而且我也有KNN或CentralImputation等算法选项。但是我没有看到python中的任何库也这样做。FancyComputer在数字数据上表现良好 有没有一种方法可以在python中为分类数据插补空值 编辑:添加数据集顶部的几行 >>> data_set.head() 1stFlrSF 2ndFlrSF 3SsnPorch Alley BedroomAbvGr BldgT
KNN
或CentralImputation
等算法选项。但是我没有看到python中的任何库也这样做。FancyComputer在数字数据上表现良好
有没有一种方法可以在python中为分类数据插补空值
编辑:添加数据集顶部的几行
>>> data_set.head()
1stFlrSF 2ndFlrSF 3SsnPorch Alley BedroomAbvGr BldgType BsmtCond \
0 856 854 0 NaN 3 1Fam TA
1 1262 0 0 NaN 3 1Fam TA
2 920 866 0 NaN 3 1Fam TA
3 961 756 0 NaN 3 1Fam Gd
4 1145 1053 0 NaN 4 1Fam TA
BsmtExposure BsmtFinSF1 BsmtFinSF2 ... SaleType ScreenPorch Street \
0 No 706.0 0.0 ... WD 0 Pave
1 Gd 978.0 0.0 ... WD 0 Pave
2 Mn 486.0 0.0 ... WD 0 Pave
3 No 216.0 0.0 ... WD 0 Pave
4 Av 655.0 0.0 ... WD 0 Pave
TotRmsAbvGrd TotalBsmtSF Utilities WoodDeckSF YearBuilt YearRemodAdd \
0 8 856.0 AllPub 0 2003 2003
1 6 1262.0 AllPub 298 1976 1976
2 6 920.0 AllPub 0 2001 2002
3 7 756.0 AllPub 0 1915 1970
4 9 1145.0 AllPub 192 2000 2000
YrSold
0 2008
1 2007
2 2008
3 2006
4 2008
[5 rows x 81 columns]
处理缺失值的方法很少。据我所知,您希望按照特定规则填写NaN。可以使用熊猫。下面的代码是如何用最频繁的值填充分类NaN的示例
df['Alley'].fillna(value=df['MSZoning'].value_counts().index[0],inplace =True)
这也会对我有所帮助
有关熊猫的更多信息,请访问fillna
希望这能起作用处理缺失值的方法很少。据我所知,您希望按照特定规则填写NaN。可以使用熊猫。下面的代码是如何用最频繁的值填充分类NaN的示例
df['Alley'].fillna(value=df['MSZoning'].value_counts().index[0],inplace =True)
这也会对我有所帮助
有关熊猫的更多信息,请访问fillna
希望这能奏效你在用熊猫吗?你能提供一个吗?@pault,是的,我使用的是熊猫,数据集是一个数据帧。我目前正在使用波士顿住房数据集。您想要的输出是什么?@pault,想要的输出是无空值的数据集。FancyComputer对数值列的插补是指/中值插补、Knn插补等,但我找不到任何用于插补分类数据中的空值的库。您想用什么来插补空值?最常使用的值?是否使用熊猫?你能提供一个吗?@pault,是的,我使用的是熊猫,数据集是一个数据帧。我目前正在使用波士顿住房数据集。您想要的输出是什么?@pault,想要的输出是无空值的数据集。FancyComputer对数值列的插补是指/中值插补、Knn插补等,但我找不到任何用于插补分类数据中的空值的库。您想用什么来插补空值?最频繁的值?