python - 用熊猫中另一列中的相应值替换所有出现的某个值
问题描述
我有一个看起来像这样的大熊猫 DataFrame:
a b c 1 2 3 4 ...
1 1 200 A T/T C/C ./. A/A ...
2 1 258 C ./. C/C T/T A/A ...
3 1 400 G G/G C/G ./. ./. ...
...
我想替换“./.”的每个实例 在任何编号的列中,在列 c 中具有相应的条目。
最好的方法是什么?
我知道可以通过遍历每一行来解决它,但是有没有“更好”、更快的解决方案?
解决方案
只需使用apply()
方法:-
df=df.apply(lambda x:x.replace('./.',x['c']),axis=1)
现在,如果您打印df
,您将获得所需的输出:
a b c 1 2 3 4
1 1 200 A T/T C/C A A/A
2 1 258 C C C/C T/T A/A
3 1 400 G G/G C/G G G
推荐阅读
- codenameone - 如何使用mirah为来自多个包的类创建映射器?
- android - 用户可以上传图片,即个人资料图片 - 有哪些最佳做法?
- go - 调用 eq 时出错:Go 模板中的比较类型无效
- r - 按物种、地点和日期绘制的不同直方图
- compiler-construction - LLVM IR 嵌套 phi 指令
- julia - 如何在 julia-0.7 中丢失所有缺失向量的平均值?
- oracle - 从 XMLTYPE 解析多列
- javascript - Javascript 对象 - 将对象数组与一些经典对象合并
- java - 将多个字符串转换为一个
- node.js - 找不到socket.io/socket.io.js