In [139]: pandas.__version__
Out[139]: '0.7.3'
我在DataFrame
中有两个对齐的系列,它们有几个无与伦比的“NaN”。我想打印它们之间的交叉点去除所有“NaN”,但没有松散的对齐。也就是说,我想从两个系列中删除行,我在其中一个中找到“NaN”。这听起来很简单,但是之后我不会在系列之间进行任何操作,也不能单独从系列中删除。我无法找到正确的df函数来做到这一点 - 有几个没有记录。
举个例子,我想接受这个:
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
答案 0 :(得分:1)
正如我在上面的评论中写的那样,最好的答案是:
newdf = df1.dropna()[['S', 'JEXP']]
从原始df片段开始,只保留一系列兴趣。
卡梅尔建议:
newdf = df1.dropna(subset=['S', 'JEXP'])
也基于子集列表工作和dropan,但保留所有其他系列 - 它复制您的数据集。