如何使用存储在 csv 中的 Pandas 情绪分析数据绘制多折线图
How to Plot Multiple Line chart Using Pandas of Sentiment analysis data stored in csv
我有数据集在做了情绪分析之后,它有第一列(日期)和第二列(情绪)
- 2019-03-19,积极 2019-03-19,消极 2019-03-19,中性
2019-03-19,积极 2019-04-19,积极 2019-04-19,中性
2019-04-19 ,积极 2019-04-19 ,积极 2019-04-19 ,积极
2019-05-19 ,正 2019-05-19 ,负 2019-05-19 ,正
2019-05-19 ,负数
这是数据集:https://drive.google.com/file/d/1jlmuzFi9OS3mBWjgQvQuKGdNzan708R6/view?usp=sharing
我想绘制 3 个具有正、负和中性的图形,如下所示
x 轴日期和 y 轴编号 positive/neg/neutral 有点像这样任何建议都会有用谢谢
首先,您需要将数据转换为按日期和情绪类型分组的计数,
df = pd.read_csv('path-to-data/raw-Hospital.csv', header=None,
names=['date', 'text', 'sentiment'], parse_dates=['date',])
by_day_sentiment = df.groupby([pd.Grouper(key='date', freq='D'), 'sentiment']) \
.size().unstack('sentiment')
这将为您提供计数数据,
sentiment negative neutral positive
date
2019-03-10 2 13 42
2019-03-11 15 58 81
2019-03-12 11 61 70
2019-03-13 5 158 110
2019-03-14 2 110 182
2019-03-15 11 80 216
2019-03-16 7 58 66
2019-03-17 2 31 53
2019-03-18 11 87 137
2019-03-19 2 24 53
然后在摘要DataFrame上绘制就可以得到如上图的折线图,
by_day_sentiment.plot()
我有数据集在做了情绪分析之后,它有第一列(日期)和第二列(情绪)
- 2019-03-19,积极 2019-03-19,消极 2019-03-19,中性
2019-03-19,积极 2019-04-19,积极 2019-04-19,中性
2019-04-19 ,积极 2019-04-19 ,积极 2019-04-19 ,积极
2019-05-19 ,正 2019-05-19 ,负 2019-05-19 ,正
2019-05-19 ,负数
这是数据集:https://drive.google.com/file/d/1jlmuzFi9OS3mBWjgQvQuKGdNzan708R6/view?usp=sharing
我想绘制 3 个具有正、负和中性的图形,如下所示
x 轴日期和 y 轴编号 positive/neg/neutral 有点像这样任何建议都会有用谢谢
首先,您需要将数据转换为按日期和情绪类型分组的计数,
df = pd.read_csv('path-to-data/raw-Hospital.csv', header=None,
names=['date', 'text', 'sentiment'], parse_dates=['date',])
by_day_sentiment = df.groupby([pd.Grouper(key='date', freq='D'), 'sentiment']) \
.size().unstack('sentiment')
这将为您提供计数数据,
sentiment negative neutral positive
date
2019-03-10 2 13 42
2019-03-11 15 58 81
2019-03-12 11 61 70
2019-03-13 5 158 110
2019-03-14 2 110 182
2019-03-15 11 80 216
2019-03-16 7 58 66
2019-03-17 2 31 53
2019-03-18 11 87 137
2019-03-19 2 24 53
然后在摘要DataFrame上绘制就可以得到如上图的折线图,
by_day_sentiment.plot()