在 Pandas 数据框中使用 Keras 的 pad_sequences。

3

我有一个Pandas数据框,其中包含单词索引。

    id  seq                          int_sequence
0   111 cat over dog                 [2, 7, 3]
1   222 hello silly dog cat from     [6, 9, 3, 2, 5]
2   333 biscuit sandwich food        [1, 8, 4]

我现在正尝试用零来填充序列,使其达到最大长度。

padded_sequences = pad_sequences(df.int_sequence, maxlen=MAX_SEQ_LENGTH, padding='post', value=0)

这个函数返回一个形状为(3,5)的numpy数组 - 然后我使用下面的转换将numpy数组转换成df并加入到原始的df中:

df_padded_sequences = pd.DataFrame({ 'padded_seq': padded_sequences.tolist()})

虽然它能够工作,但感觉有些粗糙 - 因此我想在pandas数据框中就地使用pad_sequences,这样我就不用担心任何顺序的破坏和改变了。
谢谢!
1个回答

4

好的,我已经让它工作了!但如果有更好的解决方案,请告诉我...

df['padded_sequences'] = pad_sequences(df.int_sequence, maxlen=MAX_SEQ_LENGTH, padding='post', value=0).tolist()

将numpy数组转换为列表。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接