如何根据数据框python中的长度过滤行

时间:2017-10-27 21:39:00

标签: python pandas dataframe

假设我有一个数据框

id      name            cost    
A       first           19
A       ssdecond        22
A       thirdoth        10

我可以根据值

选择列
df[df.cost > 10]

但是,我如何根据长度来做呢,

df[len(df.name) < 4] 

我收到错误。还有另一种方法吗

2 个答案:

答案 0 :(得分:2)

使用str.len

df[df.name.str.len() < 6] 
Out[1037]: 
  id   name  cost
0  A  first    19

或使用apply

df[df.name.apply(len)<6]
Out[1040]: 
  id   name  cost
0  A  first    19

答案 1 :(得分:1)

为了过滤行,你也可以使用 df.loc []

df.loc[df['name'].str.len()<6]