pandas Dask dataframe空值未替换为“NA”字符串[重复]

knpiaxh1  于 2023-04-28  发布在  其他
关注(0)|答案(1)|浏览(130)

此问题已在此处有答案

pandas fillna not working(5个答案)
2天前关闭。
我使用dask包进行文件处理,我试图使用fillna()函数用“NA”字符串填充少数特定列的空白值,但空白值没有填充“NA”。
下面是我尝试的代码:

import pandas as pd
import dask.dataframe as dd
import numpy as np

read = dd.read_csv("multianno.csv",sep=",",low_memory=False, keep_default_na = False, na_values = np.nan)
omim = pd.read_excel('OMIM.xlsx')
Merge = dd.merge(read, omim, on = "Gene.refGene", how ="left")
Merge.fillna({"ID" : "NA", "genename" : "NA", "phenotype" : "NA"})

我期望得到以下结果:

Chr     Start     End     Ref    Alt    Gene.refGene    ID  genename    phenotype   
chr1    10617   10637   CGCC    -   NONE;DDX11L17   NA      NA         NA
chr1    12783   12783   G   A   DDX11L1         NA      NA      NA  
chr1    13958   13958   C   -   DDX11L1         NA      NA      NA

但是,相反得到的结果是空白单元格仍然是空的。

Chr     Start     End     Ref    Alt    Gene.refGene    ID  genename    phenotype   
chr1    10617   10637   CGCC    -   NONE;DDX11L17   NaN NaN         NaN 
chr1    12783   12783   G   A   DDX11L1         NaN NaN     NaN 
chr1    13958   13958   C   -   DDX11L1         NaN NaN     NaN

这将是很大的帮助,如果任何人有一个解决方案,就如何解决这个问题。

kq0g1dla

kq0g1dla1#

我相信你错过了保存到变量

Merge = Merge.fillna({"ID" : "NA", "genename" : "NA", "phenotype" : "NA"})

相关问题