当前位置: 代码迷 >> python >> 如何对值进行分类,而忽略其他在数据框内满足特定条件的值?
  详细解决方案

如何对值进行分类,而忽略其他在数据框内满足特定条件的值?

热度:101   发布时间:2023-07-16 10:00:22.0

我的数据框由非负值组成,但缺失值已编码为负值。 所以我想在排除负值的同时对每一列进行装箱。

到目前为止,在[df>0]上的qcut使Nan以前存在负值,而这并不是我想要的,因为我想保留这些值(它们具有含义)。

dat[i]=pd.qcut(dat[i][dat[i]>0], 10,labels = False, duplicates='drop') 

对我来说,您所需的输入和输出仍然有些不清楚(将它们放入问题中可能会有所帮助)。 但是我认为您可以通过创建一个临时列并用原始列填充NaN值来实现您想要的。

从原始qcut代码开始,但将其分配给新列:

dat['temp'] = pd.qcut(dat[i][dat[i]>0], 10, labels=False, duplicates='drop')
dat[i] = dat['temp'].fillna(df[i])
del df['temp']
  相关解决方案