如何在数据帧中从4个级别创建两个容器?

2024-10-02 02:24:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我在pandas数据框中的一列如下所示。我想把我的“女儿”列,这样0的行将收到“无”的标签,而1,2,3,4的行将收到“一些”的标签

包含列的当前数据集

Daughter
0
0
1
2
4
3

预期输出:

Daughter Daugther_fact
0         None
0         None
1         Some
2         Some
4         Some
3         Some

我是python的新手。我知道我必须使用pd.cut来分配标签,但我不确定如何实现这一点。感谢您的帮助


Tags: 数据nonepandassome标签pdfactcut
2条回答

首先导入pandasnumpy

import numpy as np
import pandas as pd

你能试试下面的吗

m=df['Daughter']!=0
df['Daughter_fact']=np.where(m,"Some","None")
df

当我们打印df时,输出如下

  Daughter  Daughter_fact
0  0         None 
1  0         None 
2  1         Some 
3  2         Some 
4  4         Some 
5  3         Some 

这是你需要的吗

pd.cut(df.Daughter,[-np.inf,0,np.inf],labels=['None','some'])
Out[35]: 
0    None
1    None
2    some
3    some
4    some
5    some
Name: Daughter, dtype: category
Categories (2, object): [None < some]

相关问题 更多 >

    热门问题