Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 熊猫转换';NA';杜楠_Python_Pandas_Bioinformatics - Fatal编程技术网

Python 熊猫转换';NA';杜楠

Python 熊猫转换';NA';杜楠,python,pandas,bioinformatics,Python,Pandas,Bioinformatics,我只是为了在我的生物学研究中做一些数据分析工作而挑选了熊猫。我正在分析的一种蛋白质叫做“NA” 我有一个矩阵,列标题上两两写着‘HA,M1,M2,NA,NP…’,与“行标题”相同(对于可能阅读本文的生物学家,我正在研究流感) 当我直接从CSV文件将数据导入Pandas时,它将“行标题”读取为“HA,M1,M2…”,然后将NA读取为NaN。有没有办法阻止这一切?列标题很好-“HA、M1、M2、NA、NP等…”。通过以下方式关闭NaN检测:pd.read\u csv(filename,keep\u

我只是为了在我的生物学研究中做一些数据分析工作而挑选了熊猫。我正在分析的一种蛋白质叫做“NA”

我有一个矩阵,列标题上两两写着‘HA,M1,M2,NA,NP…’,与“行标题”相同(对于可能阅读本文的生物学家,我正在研究流感)


当我直接从CSV文件将数据导入Pandas时,它将“行标题”读取为“HA,M1,M2…”,然后将NA读取为NaN。有没有办法阻止这一切?列标题很好-“HA、M1、M2、NA、NP等…”。

通过以下方式关闭NaN检测:
pd.read\u csv(filename,keep\u default\u NA=False)

我最初建议
na_filter=False
,这样可以完成任务。但是,如果我理解杰夫下面的评论,这是一个更干净的解决方案

例如:

In [1]: pd.read_csv('test')
Out[1]:[4]: pd.read_csv('test', keep_default_na=False)
Out[4]:1   2
2   3
刚刚遇到了这个问题--我为列指定了一个str转换器,因此可以将na保留在其他位置:
pd.read\u csv(…,converters={“file name”:str,“company name”:str})

也许也值得一提
na\u值
:)是的。说到这里,我觉得奇怪的是,在这种情况下,
na_values=None
(默认值)和
na_values=[]
都不抑制NaN检测。仅供参考,na_过滤器是一种不同类型的选项,旨在完全“关闭”NaN检测,而na_值允许检测新的/不同的值,并使事情复杂化,keep_na_过滤器允许您不使用默认na值。。。!可能需要文档/食谱中的示例!还要注意的是,关闭nan检测将导致列的数据类型(如果它说有混合字符串/整数)成为
对象
,这通常不是一件好事,您确实希望尽可能地转换为基类型以提高效率Jeff,
保留na_过滤器
是一件事吗?我在read_csv文档中找不到,但我想我知道你的意思。如果我修改后的答案不是最佳答案,我将很乐意接受编辑。谢谢。对于愚蠢的黑客解决方案,您可以在csv中进行搜索/替换,并将
NA
重命名为类似
NA\u-safe
的内容。这将有助于避免在某个特定列中从NA改为nan。