【发布时间】:2019-02-04 17:01:28
【问题描述】:
这个问题和Python: Pandas filter string data based on its string length这个问题很相似,但是我想用pandas.DataFrame.query。假设我们有一个pandas.DataFrame。我喜欢使用pandas.DataFrame.query过滤掉列A的字符串长度不等于3的行
import pandas as pd
import numpy as np
df = pd.DataFrame({'A' : ['hi', 'hello', 'day', np.nan], 'B' : [1, 2, 3, 4]})
df.query('A.str.len() != 3')
但是,我收到以下错误
TypeError: unhashable type: 'numpy.ndarray'
【问题讨论】:
-
这个表达式对我有用,也许你的数据框的 A 列有一些特定的东西。请分享
df.head()的输出 -
@HaleemurAli 我已经修改了代码,你可以在那里使用示例。
标签: python string pandas dataframe