根据熊猫中的另一个列值更改列值

Chippycentra

我有一个数据框,python例如:

seqnames    start   end name    number  strand
     A       50     453   A      1        -
     B       30     322   A      2        -
     C       10     432   A      3        -
     D       36     344   A      4        +
     E       40     321   A      5        +
     F       78     234   A      6        -

我想根据中的符号更改开始和结束列中的de值strand column

因此,对于每一行,如果strand-比DOstart+1end-2如果链是+比什么都不做

在这里我应该得到:

seqnames    start   end name    number  strand
A   51  451 A   1   -
B   31  320 A   2   -
C   11  430 A   3   -
D   36  344 A   4   +
E   40  321 A   5   +
F   79  232 A   6   -

感谢您的帮助

ky

采用:

df[['start','end']]=np.where(df['strand'].eq('-')[:,None],
                np.column_stack((df['start']+1,df['end']-2)),
                df[['start','end']].values)
print(df)

  seqnames  start  end name  number strand
0        A     51  451    A       1      -
1        B     31  320    A       2      -
2        C     11  430    A       3      -
3        D     36  344    A       4      +
4        E     40  321    A       5      +
5        F     79  232    A       6      -

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

根据熊猫中的另一个值更改一个值

根据熊猫中的另一个数据框更改列中的值

根据另一个数据框中的相应值更改熊猫数据框中的值

根据另一个值熊猫更新列

如何通过另一个文件中的值更改csv列中的值

如何根据另一个表中的匹配值更新列并仅在 csv(熊猫)中写入该列

根据另一列的下一个值更改熊猫日期时间列

根据另一个(熊猫)中的值增加列中的值

根据熊猫中的另一个列值突出显示一个列值

根据另一个列值更新列值

如何根据 R 中另一个变量的值更改变量中的值?

根据另一个键值更改 JSON 中对象的值 - shell

根据数据框中的另一个像元值更改像元值

使用 MySQL AFTER UPDATE 触发器根据 INT 值更改更新另一个表中的列

matplotlib pandas:根据另一个列的值更改数据点之间的宽度

根据R中另一个向量的索引更改df列中的值

根据另一个更新一个熊猫列的不可用值

熊猫根据其他列的值从另一个更新一个df

根据另一个 df 更改 df1 列中的值

根据另一个更改 df 列中的某些值

根据另一个df列的值范围设置熊猫df列的值

根据另一个表中的值更新表中的列

根据另一个列熊猫数据框提取列值

mysql根据另一个3列值更新同一表中一列的值

如何根据来自另一个表的检查替换熊猫数据框中的一列中的值

根据mysql中另一个表中的值更新一个表中的列

根据熊猫中另一个选项卡中的匹配更改值

如何根据熊猫中的另一个更改数据框中的值?

在 MySQL 中,如何根据另一个表中更新的列更改表中列的值?