gpt4 book ai didi

python - Python中的替换功能不起作用(其他答案没有解决我的问题)

转载 作者:行者123 更新时间:2023-12-02 18:44:49 25 4
gpt4 key购买 nike

我知道这是一个重复的问题,但我尝试了其他问题的答案,但无法解决该问题。

总之,我想用“A A”替换 0,用“A B”替换 1,用“B B”替换 2,用“0 0”替换 5。

我的估算数据文件 (datafile.txt) 格式如下所示,我想仅替换“Geno”列中的信息(在真实数据集中,我有一百万行)。

<表类=“s-表”><标题>示例基因 <正文>ID111010111151ID212000120022ID312055520022ID412000120022

我使用的管道是:

import pandas as pd
#input file
fin = pd.read_table('dataframe.txt',sep = ' ', header=None)
df = pd.DataFrame(fin)
geno = (df.iloc[: , 1:])
id = (df.iloc[: , 0])
geno = pd.DataFrame(geno)
geno2 = geno.replace("0","A A ").replace("1","A B ").replace("2","B B ").replace("5","0 0 ")

感谢您的帮助!我是在 bash 中(使用 awk)执行此操作,但需要很长时间。我决定尝试使用 Python,因为我相信会更快。 PS:我是Python初学者。再次感谢您。

最佳答案

尝试:

df.Geno = df.Geno.astype(str).str.replace("0","A A ").str.replace("1","A B ").str.replace("2","B B ").str.replace("5","0 0 ")

输出:

  Sample                                          Geno
0 ID1 A B A B A A A B A A A B A B A B A B 0 0 A B
1 ID2 A B B B A A A A A A A B B B A A A A B B B B
2 ID3 A B B B A A 0 0 0 0 0 0 B B A A A A B B B B
3 ID4 A B B B A A A A A A A B B B A A A A B B B B

关于python - Python中的替换功能不起作用(其他答案没有解决我的问题),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67589696/

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