如何在熊猫数据框单元格中的列表中插入字符串值?

LD-DS-00:

我正在尝试从数据集中的虚拟变量创建标签。我创建了一个“ Tags_col”列,每次嵌套的for循环遍历每一行时,如果某个类别的值为1,则希望该类别包含在每一行的tag_col的列表中。

像这样:

Dog   Cat   Rabbit   Tags_col
 0     1      1      ['Cat','Rabbit']
 1     0      0      ['Dog']

到目前为止,我有这个:

for x in range(len(df)):
   for col in df.columns:
       if df.loc[x,col] == 1:
           df.loc[x, "Tags_col"] = col

但是,这仅附加了for循环在Tags_col中找到的第一类。

谢谢。

耶斯雷尔:

将list comprehension与boolean一起使用,DataFrame由compare by 1和根据列名称创建的过滤器数组使用:

cols = df.columns.to_numpy()
df['Tags_col'] = [list(cols[x]) for x in df.eq(1).to_numpy()]
print (df)

   Dog  Cat  Rabbit       Tags_col
0    0    1       1  [Cat, Rabbit]
1    1    0       0          [Dog]

如果性能不重要,请使用DataFrame.apply

df['Tags_col'] = df.apply(lambda x: list(x.index[x==1]), axis=1)
print (df)
   Dog  Cat  Rabbit       Tags_col
0    0    1       1  [Cat, Rabbit]
1    1    0       0          [Dog]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用单元格中的字符串重新输入熊猫中的数据框?

如果在类型列表的单元格值中找到字符串,如何根据条件删除熊猫数据框中的行?

在熊猫数据框单元格中插入列表

如何删除 Python 数据框单元格内的字符串中的重复值

Excel在字符串中插入单元格值

如何从熊猫数据框中获取单元格值

如何在数据框中找到值为字符串类型的单元格

如何在熊猫数据框中的多行中拆分单元格的值?

从pandas数据框单元格中的字符串值中提取整数

以字符串形式返回Pandas多索引数据框中的单元格值

检查数据框中的单元格值是否为字符串

如何在数据框中搜索部分字符串并使用 Pandas 返回特定单元格?

如何比较数据框列中的字符串值和单元格中的值以创建基于多值字典的新数据框?

为每个熊猫数据框单元格的字符串列表分配唯一值

如何在VBA中的字符串中引用单元格值?

如何在熊猫数据框中使用0替换空单元格并将字符串更改为整数?

如何在字符串中调用单元格值?

替换熊猫数据框中的单元格值

在单元格中的字符串中间插入标签

将单元格中的值插入字符串中

仅在满足一个条件的情况下如何查找字符串,然后从数据框中的单元格而不是行本身中删除值?

如何在Excel中替换字符串并检查整个单元格字符串?

熊猫-使用搜索按每个单元格中的字符串值进行修改

使用熊猫过滤具有多个值的单元格中的字符串

如何在熊猫数据框中的单元格中添加行名?

如何在熊猫中从列表中提取数据作为字符串,并按值选择数据?

计算单元格列表中的字符串出现

从数据框单元格中读取类似值的列表

如何检查数据框中的单元格是否是来自不同列但同一行的另一个单元格的子字符串