gpt4 book ai didi

python - Pandas 数据帧 : Writing values to column depending on a value check of existing column

转载 作者:太空狗 更新时间:2023-10-30 02:58:24 24 4
gpt4 key购买 nike

我想向 pd.DataFrame 添加一列,在其中我根据对现有列的检查写入值。

我想检查字典中的值。假设我有以下字典:

{"<=4":[0,4], "(4,10]":[4,10], ">10":[10,inf]}

现在我想检查我的 DataFrame 中的一列,如果该列中的值属于字典中的任何间隔。如果是这样,我想将匹配的字典键写入同一数据框中的第二列。

所以像这样的 DataFrame:

     col_1
a 3
b 15
c 8

将变成:

     col_1   col_2
a 3 "<=4"
b 15 ">10"
c 8 "(4,10]"

最佳答案

pd.cut() 函数用于将连续变量转换为分类变量,在本例中我们有 [0 , 4 , 10 , np.inf] ,这意味着我们有 3 个类别 [0 , 4] , [4 , 10] , [10 , inf] , 所以 0 之间的任何值和 4将被分配到类别 [ 0 , 4] ,以及 4 之间的任何值和 10将被分配到类别 [ 4 , 10 ]等等。

然后您以相同的顺序为每个类别分配一个名称,您可以使用标签参数来完成此操作,在本例中我们有 3 个类别 [0 , 4] , [4 , 10] , [10 , inf] ,我们将简单地分配 ['<=4' , '(4,10]' , '>10']到标签参数,这意味着 [0 , 4]类别将被命名为 <=4 , 和 [4 , 10]类别将被命名为 (4,10]等等。

In [83]:
df['col_2'] = pd.cut(df.col_1 , [0 , 4 , 10 , np.inf] , labels = ['<=4' , '(4,10]' , '>10'] )
df
Out[83]:
col_1 col_2
0 3 <=4
1 15 >10
2 8 (4,10]

关于python - Pandas 数据帧 : Writing values to column depending on a value check of existing column,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34046626/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com