Python 打印内部系列
我在一个Python 打印内部系列,python,pandas,Python,Pandas,我在一个数据帧中有两个对齐的序列,其中有几个不匹配的“NaN”。我想打印它们之间的交叉点,删除所有“NaN”,但不松散对齐。也就是说,当我在其中一个序列中找到“NaN”时,我想从这两个序列中删除行。这听起来很简单,但我没有做任何操作之间的系列dropna的后,不能dropna的系列分开。我无法找到正确的df函数来执行此操作-有几个没有文档记录。 举个例子,我想举个例子: In [139]: pandas.__version__ Out[139]: '0.7.3' 并打印以下内容: 10
数据帧中有两个对齐的序列,其中有几个不匹配的“NaN”。我想打印它们之间的交叉点,删除所有“NaN”,但不松散对齐。也就是说,当我在其中一个序列中找到“NaN”时,我想从这两个序列中删除行。这听起来很简单,但我没有做任何操作之间的系列dropna的后,不能dropna的系列分开。我无法找到正确的df函数来执行此操作-有几个没有文档记录。
举个例子,我想举个例子:
In [139]: pandas.__version__
Out[139]: '0.7.3'
并打印以下内容:
10 NaN -1.200
11 NaN -1.324
12 0.000585 NaN
13 0.000573 -1.453
14 NaN -2.006
正如我在上面的评论中所写,最好的答案是:
13 0.000573 -1.453
那个dropan来自原始df的一部分,只保留了感兴趣的系列。
卡梅尔建议:
newdf = df1.dropna()[['S', 'JEXP']]
这同样有效,dropan基于子集列表,但是,保留所有其他系列-它复制您的数据集。这有点难理解。为什么df.dropna()不是您想要的?你在上面的数据框上试过了吗?你是说把df完全删除了???也许有更好的办法。这是一个非常大的数据集。但这不正是你想要做的吗?如果不是这样,你在描述什么?您还可以使用subset
参数指定特定的列子集:newdf=df1.dropna()[['S',JEXP']]您的意思是只删除在S或JEXP列中存在NaN的行吗?(我正试图在这里提供帮助;请澄清,否则我无法!)尝试newdf=df1.dropna(subset=['S','JEXP'])
newdf = df1.dropna(subset=['S', 'JEXP'])