Python 熊猫qcut应用于NaN中的新数据结果
我正在参加一个建模项目,我遇到了这个问题。 此示例使用不带11的数据帧获取BIN,当BIN应用于包含11的新数据帧时,将导致NaN。显然这会发生,但我想知道是否有(通常有)任何聪明的方法可以很容易地处理这一问题,比如一些技术可以将(7.75,10.0)变成(7.75,np.inf)Python 熊猫qcut应用于NaN中的新数据结果,python,pandas,dataframe,feature-engineering,Python,Pandas,Dataframe,Feature Engineering,我正在参加一个建模项目,我遇到了这个问题。 此示例使用不带11的数据帧获取BIN,当BIN应用于包含11的新数据帧时,将导致NaN。显然这会发生,但我想知道是否有(通常有)任何聪明的方法可以很容易地处理这一问题,比如一些技术可以将(7.75,10.0)变成(7.75,np.inf) 作为pd进口熊猫 a、 bin=pd.qcut(pd.DataFrame({“a”:[1,2,3,4,5,6,7,8,9,10])。a,retbins=True,q=4) pd.cut(pd.DataFrame({
作为pd进口熊猫
a、 bin=pd.qcut(pd.DataFrame({“a”:[1,2,3,4,5,6,7,8,9,10])。a,retbins=True,q=4)
pd.cut(pd.DataFrame({“A”:[1,2,11]}).A,bins=bin,include_lowest=True)
0 (0.999, 3.25]
1 (0.999, 3.25]
2楠
名称:A,数据类型:类别
类别(4,区间[float64]):[(0.999,3.25]<(3.25,5.5]<(5.5,7.75]<(7.75,10.0]]
创建垃圾箱时,只需使用np.inf而不是10
a,bin = pd.qcut(pd.DataFrame({"A":[1,2,3,4,5,6,7,8,9,np.inf]}).A,retbins = True, q = 4)
pd.cut(pd.DataFrame({"A":[1,2,11]}).A, bins = bin ,include_lowest = True)
0 (0.999, 3.25]
1 (0.999, 3.25]
2 (7.75, inf]
Name: A, dtype: category
Categories (4, interval[float64]): [(0.999, 3.25] < (3.25, 5.5] < (5.5, 7.75] < (7.75, inf]]
a,bin=pd.qcut(pd.DataFrame({“a”:[1,2,3,4,5,6,7,8,9,np.inf])。a,retbins=True,q=4)
pd.cut(pd.DataFrame({“A”:[1,2,11]}).A,bins=bin,include_lowest=True)
0 (0.999, 3.25]
1 (0.999, 3.25]
2(7.75,inf]
名称:A,数据类型:类别
类别(4,区间[float64]):[(0.999,3.25]<(3.25,5.5]<(5.5,7.75]<(7.75,inf]]
a,bin = pd.qcut(pd.DataFrame({"A":[1,2,3,4,5,6,7,8,9,np.inf]}).A,retbins = True, q = 4)
pd.cut(pd.DataFrame({"A":[1,2,11]}).A, bins = bin ,include_lowest = True)
0 (0.999, 3.25]
1 (0.999, 3.25]
2 (7.75, inf]
Name: A, dtype: category
Categories (4, interval[float64]): [(0.999, 3.25] < (3.25, 5.5] < (5.5, 7.75] < (7.75, inf]]