首页 > 解决方案 > 格式化 pandas 对象列

问题描述

我有一个 pandas DataFrame,其中一列填充了Pydub AudioSegment对象。

只需在单元格中执行此操作,我就可以将单个播放器显示AudioSegment为 HTML 音频播放器:

from pydub import AudioSegment
AudioSegment.from_wav("never_gonna_give_you_up.wav")

但是,当我显示 pandas DataFrame 时,我只会得到一个填充有对象引用的列:(((<pydub.audio_segment.AudioSegment object at...

我希望该列填充 HTML 音频播放器,以便我可以查看元数据并收听剪辑。

标签: pandasjupyterpydub

解决方案


我有同样的问题,这是我设法在 Jupyter 的数据框中显示音频文件的方法

import IPython.display as ipd

df['wav_pydub'] = df['wav_pydub'].apply(lambda x:x._repr_html_().replace('\n', '').strip(), axis=1)
df_html = df.to_html(escape=False, index=False)

ipd.display(ipd.HTML(table_html))

推荐阅读