当前位置: 首页 > 知识库问答 >
问题:

仅根据数据框[重复]中的列名设置值

翟学文
2023-03-14
    max_speed  shield  new
1   1          2       3
2   4          5       6

我得到了这个数据帧,我想根据一些列名分配一个值。像这样。loc[df['max_speed']==1,df['shield']==2,new]=10然后我将获得新的数据帧:

    max_speed  shield  new
 1  1          2       10
 2  4          5       6

有人知道怎么做吗?

共有2个答案

薛扬
2023-03-14

如果你想改变值,如果不满足你的条件:

df['new'] = np.where((df['max_speed']==1) & (df['shield']==2) , 10, df['new'])
陶星波
2023-03-14

你很接近。

df.loc[(df.max_speed == 1) & (df.shield == 2), "new"] = 10

进一步的阅读,见这里。

 类似资料:
  • 我有一个,有200多列。问题在于订单生成时 我需要对这些列进行如下排序: 我有办法在Python中做到这一点吗?

  • 我有一个熊猫数据框。如果以前的值x小于50,而当前值大于50,我想为新列y添加一个值为1的新列。 我得到这个错误: 代码:

  • 我有一个像这样的数据框- 我有一个这样的列表- 现在,我想根据列名列表对数据框进行排序 因此,新的数据框将有列名称-

  • 问题内容: 我有一个系统,人们可以填写他们的信息,以后可以回去编辑某些部分,基本上是输入个人信息,并检查他们是否想知道其他信息,这些额外信息中有4个是复选框。用户将最多选择4个字段,并且数据库将4个字段设置为no,如果他们选择一个,则字段将更改为yes。我希望他们能够返回并取消选择或重新选择这4个复选框中的任何一个,所以我希望如果值是yes,则要选中的复选框,如果值不是,则不选中。 字段是tag_

  • 问题内容: 我有交易数据框。每行代表两个项目的交易(可想而知,就像两张事件票之类的交易一样)。我想根据售出的数量重复每一行。 这是示例代码: 这将产生一个看起来像这样的数据框 因此,在上述情况下,每一行将转换为两个重复的行。如果“数量”列为3,则该行将转换为三个重复的行。 问题答案: 首先,我使用整数而不是文本重新创建了您的数据。我还更改了数量,以便可以更轻松地理解问题。 我通过使用嵌套列表理解结

  • 问题内容: 有没有一种方法可以根据我的个人喜好(即不按字母或数字排序,而是更像遵循某些约定)对熊猫数据框中的列进行重新排序? 简单的例子: 产生这个: 但是,我想这样: (请提供通用解决方案,而不是针对此情况。非常感谢。) 问题答案: 只需输入列名称即可自己选择订单。请注意双括号: