删除熊猫中已注释的行

时间:2018-12-21 19:02:05

标签: python pandas

我有一个数据框,该数据框的底部可能带有注释字符。由于其他一些原因,我无法传递注释字符来初始化数据框本身。这是我所拥有的示例:

df = pd.read_csv(file,header=None)
df
                       0       1
0                 132605       1
1                 132750       2
2                 # total: 100000

是否有一种方法可以删除所有以注释字符开头的行-即无需重新加载数据框?

2 个答案:

答案 0 :(得分:1)

使用startswith

newdf=df[df.iloc[:,0].str.startswith('#').ne(True)]

答案 1 :(得分:1)

数据框:

>>> df                                                                                                                 
          0       1
0    132605       1
1    132750       2
2  # total:  100000
3       foo     bar

就地投放:

>>> to_drop = df[0].str.startswith('#').where(lambda s: s).dropna().index                                              
>>> df.drop(to_drop, inplace=True)                                                                                     
>>> df                                                                                                                 
        0    1
0  132605    1
1  132750    2
3     foo  bar

假设:您要查找标有0的列以'#'开头的行。否则,请进行相应调整。