【发布时间】:2017-12-09 21:50:05
【问题描述】:
我有一个这样的数据框:
import pandas as pd
df = pd.DataFrame()
df['trans'] = ['none', 'taxi', 'bus_101', 'bus_105', 'bus_106', 'car', 'horse']
df['cost'] = [1, 2, 3, 4, 5, 6, 7]
我想过滤掉所有的总线 ('bus_101', 'bus_105', 'bus_106')
我尝试了两种方法:
df['bus' not in df.trans].trans
并试图从 Series 中获取一个 str,以比较它的前 3 个字符:
df[df.trans[:3] != 'bus'].trans
和
df[df.trans.astype(str)[:3] != 'bus'].trans
没有成功。我希望结果是:
0 none
1 taxi
5 car
6 horse
但我实际上得到的只是错误。
【问题讨论】:
标签: python string pandas dataframe filtering