有条件地提取数据框行时使列表索引超出范围

时间:2019-07-01 03:11:01

标签: python pandas

提取部分令牌数据帧会抛出列表索引超出范围错误。

已编辑以显示完整代码

tokens['len'] = tokens['token_raw'].apply(lambda x: len(x))
txt = "this is a sample text"
input_df = pd.DataFrame(txt.lower().split(), columns=['input_text'])
input_df = input_df['input_text'].apply(lambda x: flag_nonword(x))

def flag_nonword(w):
    input_len = len(w)+3
    tokens_ext = tokens.loc[tokens['len'] < input_len ]
    tokens_ext.sort_values('len',ascending=True, inplace = True)
    tokens_ext['ed'] = tokens_ext['token_raw'].apply(lambda x: 
nltk.edit_distance(w,x))
    tokens_ext.sort_values(by=['ed', 'freq'], ascending=[True, False])
    return list(tokens_ext.iloc[:6,0])

2 个答案:

答案 0 :(得分:2)

或两个Module not found: Error: Can't resolve 'my-scheduler'

iloc

答案 1 :(得分:0)

可以尝试吗?

def flag_nonword(w):
    input_len = len(w)+3
    tokens_ext = tokens.loc[tokens['len'] < input_len + 1]
    tokens_ext.sort_values('len',ascending=True, inplace = True)
    tokens_ext['ed'] = tokens_ext['token_raw'].apply(lambda x: