2024-10-02 02:24:25 发布
网友
我在pandas数据框中的一列如下所示。我想把我的“女儿”列,这样0的行将收到“无”的标签,而1,2,3,4的行将收到“一些”的标签
pandas
包含列的当前数据集
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来分配标签,但我不确定如何实现这一点。感谢您的帮助
pd.cut
首先导入pandas和numpy
numpy
import numpy as np import pandas as pd
你能试试下面的吗
m=df['Daughter']!=0 df['Daughter_fact']=np.where(m,"Some","None") df
当我们打印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]
首先导入
pandas
和numpy
你能试试下面的吗
当我们打印
df
时,输出如下这是你需要的吗
相关问题 更多 >
编程相关推荐