如何使用python在Matplotlib中绘制单词出现的时间序列?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用python在Matplotlib中绘制单词出现的时间序列?相关的知识,希望对你有一定的参考价值。

我有一个包含此内容的文本文件

   'word' , 'timestamp'
    word1 , 1546403642
    word2 , 1546392481
    word1 , 1546403642
    word3 , 1546394402
    ...

第一个字段是单词(10个字最大值,多次出现),第二个字段是该字出现的时间戳。

我没有问题,阅读这个文件并用Pandas解析这个CSV文件并将linux时间戳转换为另一种格式,但我不知道如何将它放在Matplotlib中以显示每个单词出现的时间,如下所示:enter image description here

我正在寻找一个提示或库或关闭如何绘制这个例子,我在时间序列中找不到任何接近的例子,就像这样。

我在thisthis链接中找到了一些例子,但我不能将它们应用于我的数据,因为它们在每一行中都有出现次数,但我没有。

任何帮助,将不胜感激。

答案

您需要决定在什么时间范围内聚合字数,例如,假设您想要按月计数,您可以这样做:

import pandas as pd
df['timestamp'] = pd.to_datetime(df['timestamp'])
df.set_index('timestamp',inplace=True)
df = pd.get_dummies(df)
df = df.resample('1M').sum()

get_dummies将为每个单词创建一个列,并给出0或1的值。之后,按照您选择的时间范围重新采样并通过求和将其聚合,因此结果就是出现次数。

现在,您可以通过您提供的链接中的教程来绘制它。

以上是关于如何使用python在Matplotlib中绘制单词出现的时间序列?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 matplotlib 在 python 中绘制 3D 密度图

如何在 python 中使用 matplotlib 和 pandas 绘制 CSV 数据

Python 使用 matplotlib绘制3D图形

如何使用python在Matplotlib中绘制单词出现的时间序列?

Python matplotlib - 如何在x轴上绘制一条线?

用Matplotlib绘制渐变的彩色曲线