数据分析案例-社交媒体情绪数据集可视化分析(文末送书)

 

🤵‍♂️ 个人主页:@艾派森的个人主页

✍🏻作者简介:Python学习者
🐋 希望大家多多支持,我们一起进步!😄
如果文章对你有帮助的话,
欢迎评论 💬点赞👍🏻 收藏 📂加关注+


目录

1.项目背景

2.数据集介绍

3.技术工具

4.导入数据

5.数据可视化

文末推荐与福利


1.项目背景

一、研究背景

        随着社交媒体的普及,人们越来越多地在网络上表达自己的情感和观点。这些情感和观点的汇聚,形成了一种宝贵的资源,即社交媒体情绪数据。这些数据反映了公众对于各种事件、产品、话题等的态度和情感倾向,因此具有极高的研究价值。近年来,越来越多的研究者开始关注社交媒体情绪数据的分析,以期揭示社会现象、预测市场趋势、了解公众情绪等。

        然而,社交媒体情绪数据的分析面临诸多挑战。首先,社交媒体上的文本信息常常是非结构化的,需要经过适当的预处理才能进行有效的分析。其次,情感倾向的判断并不总是显而易见的,需要依赖特定的情感词典和算法进行判断。此外,由于社交媒体用户基数庞大,数据量极大,如何有效地处理和分析这些数据成为了一大难题。

        为了解决这些问题,本研究采用数据可视化的方法对社交媒体情绪数据进行深入分析。通过可视化技术,我们可以直观地展示数据的分布、关联和动态变化,有助于我们更好地理解数据背后的规律和趋势。同时,可视化分析还能帮助我们快速识别异常值、发现数据中的模式和规律,从而提高数据分析的效率和准确性。

二、研究意义

        本研究具有重要的理论和实践意义。首先,通过可视化分析社交媒体情绪数据,我们可以更深入地了解公众的情绪和观点,为相关领域的研究提供新的视角和方法。其次,通过对情绪数据的分析,我们可以预测市场趋势和社会现象,为企业决策提供依据。此外,通过对社交媒体情绪数据的可视化分析,我们还可以发现潜在的社会问题,为政策制定提供支持。

2.数据集介绍

        本数据集来源于Kaggle,社交媒体情绪分析数据集捕捉了各种社交媒体平台上充满活力的情绪、趋势和互动。该数据集提供了用户生成内容的快照,包括文本、时间戳、主题标签、国家/地区、点赞和转发。每个条目都揭示了世界各地的人们分享的独特故事——惊喜、兴奋、钦佩、兴奋、满足等等的时刻。原始数据集共732条,13个变量,各变量含义如下:

Text:用户生成的内容展示情感

Sentiment:情绪分类

Timestamp:日期和时间信息

User:贡献用户的唯一标识符

Platform:内容起源的社交媒体平台

Hashtags:识别热门话题和主题

Retweets:量化用户参与度(喜欢)

Likes:反映内容受欢迎程度(转发)

Country:每个帖子的地理来源

Year:职位年份

Month:帖子月份

Day :发帖日

Hour:发帖时间

3.技术工具

Python版本:3.9

代码编辑器:jupyter notebook

4.导入数据

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')

df=pd.read_csv('sentimentdataset.csv')
df.head()

查看数据大小 

查看数据基本信息 

 

查看数值型变量描述性统计

查看非数值型变量描述性统计

# 去除空格
df['Text']= df['Text'].str.strip()
df['Sentiment']= df['Sentiment'].str.strip()
df['User']= df['User'].str.strip()
df['Platform']= df['Platform'].str.strip()
df['Hashtags']= df['Hashtags'].str.strip()
df['Country']= df['Country'].str.strip()

5.数据可视化

df['Sentiment'].value_counts().nlargest(10).plot(kind='bar')
plt.title('Top 10 Sentiments based on Text')
plt.xlabel('Sentiment')
plt.ylabel('Count')
plt.show()

df['Platform'].value_counts().plot(kind='pie', autopct='%1.1f%%')
plt.title('Percentages of Platforms')
plt.legend()
plt.show()

# 计算每个国家/地区每个平台的出现次数
platform_counts = df.groupby(['Country', 'Platform']).size().unstack(fill_value=0)
top_countries = platform_counts.sum(axis=1).sort_values(ascending=True).tail(10)
top_platform_counts = platform_counts.loc[top_countries.index]
plt.figure(figsize=(12, 8))
top_platform_counts.plot(kind='barh', stacked=True, ax=plt.gca())
plt.title('Top 10 Countries by Platform Counts')
plt.xlabel('Country')
plt.ylabel('Count')
plt.legend(title='Platform', bbox_to_anchor=(1.05, 1), loc='upper left')
plt.show()

df['Country'].value_counts().nlargest(10).plot(kind='bar')
plt.title('Top 10 Country')
plt.legend()
plt.show()

# 问题一:转发次数最多的10个话题标签
H_R = df.groupby('Hashtags')['Retweets'].max().nlargest(10).sort_values(ascending=False).plot(kind='bar')
plt.title('Top 10 hashtags retweeted')
plt.xlabel('Hashtags')
plt.ylabel('count')
plt.show()

# Q2:用户喜欢的平台顶部是什么?
top_likes_platform = df.groupby('Platform')['Likes'].sum().nlargest(10)
top_likes_platform.plot(kind='bar')
plt.title('Top Platforms by Total Likes')
plt.xlabel('Platform')
plt.ylabel('Total Likes')
plt.show()

# 问题3:哪个国家的帖子被点赞最多?
top_country_likes=df.groupby('Country')['Likes'].sum().nlargest(10)
top_country_likes.plot(kind='bar')
plt.title('Top country likes')
plt.xlabel('Country')
plt.ylabel('count')
plt.show()

from wordcloud import WordCloud
text = ' '.join(df['Text'])
wordcloud = WordCloud(width=800, height=400, background_color='black').generate(text)
plt.figure(figsize=(10, 6))
plt.imshow(wordcloud, interpolation='bilinear')
plt.axis('off')
plt.title('Word Cloud for PlayerLine Column')
plt.tight_layout()
plt.show()

Facebook=df[df['Platform']=='Facebook']
Twitter=df[df['Platform']=='Twitter']
Instagram=df[df['Platform']=='Instagram']

Facebook

# 转发次数最多的10个标签
H_R_f=Facebook.groupby('Hashtags')['Retweets'].max().nlargest(10).sort_values(ascending=False)
H_R_f.plot(kind='bar')
plt.title('Top 10 hashtags retweeted in $/ Facebook $/')
plt.xlabel('Hashtags')
plt.ylabel('count')
plt.show()

# 用户最喜欢谁?
top_likes_platform_F = Facebook.groupby('User')['Likes'].sum().nlargest(10)
top_likes_platform_F.plot(kind='bar')
plt.title('Top Users by Total Likes IN Facebook')
plt.xlabel('User')
plt.ylabel('Total Likes')
plt.show()

Twitter

# 转发次数最多的10个标签
H_R_t=Twitter.groupby('Hashtags')['Retweets'].max().nlargest(10).sort_values(ascending=False)
H_R_t.plot(kind='bar')
plt.title('Top 10 hashtags retweeted in $/ Twitter $/')
plt.xlabel('Hashtags')
plt.ylabel('count')
plt.show()

# 用户最喜欢谁?
top_likes_platform_t = Twitter.groupby('User')['Likes'].sum().nlargest(10)
top_likes_platform_t.plot(kind='bar')
plt.title('Top Users by Total Likes IN Twitter')
plt.xlabel('User')
plt.ylabel('Total Likes')
plt.show()

Instagram

# 转发次数最多的10个标签
H_R_i=Instagram.groupby('Hashtags')['Retweets'].max().nlargest(15).sort_values(ascending=False)
H_R_i.plot(kind='bar')
plt.title('Top 15 hashtags retweeted in $/ Instagram $/')
plt.xlabel('Hashtags')
plt.ylabel('count')
plt.show()

# 用户最喜欢谁?
top_likes_platform_i = Instagram.groupby('User')['Likes'].sum().nlargest(10)
top_likes_platform_i.plot(kind='bar')
plt.title('Top Users by Total Likes IN Instagram')
plt.xlabel('User')
plt.ylabel('Total Likes')
plt.show()

文末推荐与福利

《区块链与金融科技》免费包邮送出3本!

内容简介:      

        本书从回顾货币及金融发展史出发,分析了数字化货币诞生的必然性及必要性,以详细剖析具有开创性的比特币系统的基础技术、体系架构、数据结构、核心算法、通信协议的方式,解构其金融科技的本质和能力,以点带面、举一反三,揭示区块链技术和应用的演化发展规律,论述区块链作为数字底座对于金融科技及各领域数字化转型升级的关键性支撑作用,以及在实现数字身份、数字资产、审计监管、自治组织方面对当前数字经济、未来元宇宙的稳定性基石作用。

编辑推荐:           

·由表及里:从货币变迁到加密技术,从根源细致剖析区块链原理

·以点带面:从区块链的原理到应用,以金融视角洞察区块链技术

·举一反三:从资产权属到数字身份,在数字化转型中落地区块链

·融会贯通:从区块链技术到元宇宙,实现虚拟与现实的辩证统一

  • 抽奖方式:评论区随机抽取3位小伙伴免费送出!
  • 参与方式:关注博主、点赞、收藏、评论区评论“人生苦短,拒绝内卷!”(切记要点赞+收藏,否则抽奖无效,每个人最多评论三次!
  • 活动截止时间:2024-3-2 20:00:00
  • 京东链接:https://item.jd.com/14330972.html

    当当链接:http://product.dangdang.com/29669683.html

 名单公布时间:2024-3-2 21:00:00 

资料获取,更多粉丝福利,关注下方公众号获取

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/414651.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++-带你走进多态(1)

1. 多态的概念 1.1 概念 多态的概念:通俗来说,就是多种形态,具体点就是去完成某个行为,当不同的对象去完成时会产生出不同的状态。 举个栗子:比如买票这个行为,当普通人买票时,是全价买票&am…

Win10系统C盘突然爆满的解决方法

在Win10电脑操作中,用户发现系统C盘突然爆满了,电脑运作变得卡顿,非常影响自己的使用体验,但不知道怎么操作才可以解决问题?接下来小编给大家带来Win10系统C盘突然爆满的解决方法,帮助大家解决问题&#xf…

qt5与qt6的cmake区别

文章目录 使用cmake构建qt项目,坑很多。一是本身就麻烦,二是,确实坑,因为不同的qtcreator版本,选了不同的kits(套件) 生成的CMakeList.txt文件也不一样。 如果可以的话都选择Qt6的相关选项&…

135 Linux 系统编程11 ,linux命令重定向,dup 和dup2,fcntl实现dup ,进程和程序,虚拟内存和物理内存映射关系,pcb进程块详解

一 linux 命令中重定向,使用>实现 通过 大于号 将前面的内容写入到某一个地方 cat main.c > b.txt //cat main 本身的意思是 显示main.c的值,后面加上 > b.txt 会将显示在屏幕上的字符全部写到b.txt中 例子:将 ls -l 的内容 通…

基于springboot实现二次元商品购物系统项目【项目源码+论文说明】

基于springboot实现二次元商品购物系统演示 摘要 时代的变化速度实在超出人类的所料,21世纪,计算机已经发展到各行各业,各个地区,它的载体媒介-计算机,大众称之为的电脑,是一种特高速的科学仪器&#xff0…

RV32/64 特权架构 - 特权模式与指令

RV32/64 特权架构 - 特权模式与指令 1 特权模式2 特权指令2.1 mret(从机器模式返回到先前的模式)2.2 sret(从监管模式返回到先前的模式)2.3 wfi(等待中断)2.4 sfence.vma(内存屏障) …

什么是负载均衡集群?

目录 1、集群是什么? 2、负载均衡集群技术 3、负载均衡集群技术的实现 4、实现效果如图 5、负载均衡分类 6、四层负载均衡(基于IP端口的负载均衡) 7、七层的负载均衡(基于虚拟的URL或主机IP的负载均衡) 8、四层负载与七层…

C语言————结构体

接下来我们来了解C语言中很重要的内容:结构体。虽然到现在我们可以创建常量,变量,数组,但是存储的都是相同类型的数据,如果我们需要写入不同数据类型的信息怎么办,例如常见的身份证上的信息,有身…

进程间通信,无名管道pipe,有名管道mkfifo,信号的基础概念,signal函数

我要成为嵌入式高手之2月28日Linux高编第十一天&#xff01;&#xff01; 学习笔记 进程间通信 总共6种通信方法&#xff0c;主要是前五种方式 第一种方式&#xff1a;管道 一、无名管道 只能用于具有亲缘关系的进程间通信 pipe #include <unistd.h> int pipe(i…

ETH开源PPO算法学习

前言 项目地址&#xff1a;https://github.com/leggedrobotics/rsl_rl 项目简介&#xff1a;快速简单的强化学习算法实现&#xff0c;设计为完全在 GPU 上运行。这段代码是 NVIDIA Isaac GYM 提供的 rl-pytorch 的进化版。 下载源码&#xff0c;查看目录&#xff0c;整个项目…

2024年3月5-7日第12届生物发酵技术装备展-奥博仪表

参观企业介绍 潍坊奥博仪表科技发展有限公司成立于2002年3月&#xff0c;注册资金1000万元&#xff0c;已有20多年的发展历程&#xff0c;是一家专业从事流量仪表开发、生产与测控系统集成的高新技术企业和双软认证企业。 目前公司以仪表、通讯产品、自控系统、软件的研发、生…

DVWA 靶场之 Command Injection(命令执行)middlehigh

对于 middle 难度的 我们直接先看源码 <?phpif( isset( $_POST[ Submit ] ) ) {// Get input$target $_REQUEST[ ip ];// Set blacklist$substitutions array(&& > ,; > ,);// Remove any of the characters in the array (blacklist).$target str_rep…

Pytest教程:一种利用 Python Pytest Hook 机制的软件自动化测试网络数据抓包方法

随着计算机技术的发展&#xff0c;使得网络应用的数量不断增加&#xff0c;因此网络数据抓包成为了网络应用开发和测试中非常重要的一部分。目前&#xff0c;已有许多网络数据抓包工具可供使用&#xff0c;例如 Wireshark、Tcpdump、Fiddler 等&#xff0c;但这些工具需要手动配…

5G网络频谱划分与应用

频率越大&#xff0c;波长越短。补充&#xff1a;微波频段&#xff1a;300MHZ~3000GHZ。 5G网络工作频带与带宽配置 &#xff08;1&#xff09; FR1:410MHZ~7125MHZ。 FR2&#xff1a;24250MHZ~52600MHZ 注&#xff1a;早期将6GHZ已下频段作为FR1&#xff0c;但是最新的频段…

Python打发无聊时光:10.用flask创造按键控制的网页小游戏

游戏介绍: 《秦蓝大冒险》是一款简单而紧张的追逐游戏。在这个游戏中&#xff0c;玩家将控制一名名叫“吕千”的角色&#xff0c;试图在一个封闭的空间内逃避一个名为“秦蓝”的追逐者。随着时间的推移&#xff0c;“秦蓝”会不断追踪玩家的位置&#xff0c;努力捕捉到他。 游…

C语言中如何进行内存管理

主页&#xff1a;17_Kevin-CSDN博客 收录专栏&#xff1a;《C语言》 C语言是一种强大而灵活的编程语言&#xff0c;但与其他高级语言不同&#xff0c;它要求程序员自己负责内存的管理。正确的内存管理对于程序的性能和稳定性至关重要。 一、引言 C 语言是一门广泛使用的编程语…

2.1_6 线程的实现方式和多线程模型

文章目录 2.1_6 线程的实现方式和多线程模型&#xff08;一&#xff09;线程的实现方式&#xff08;1&#xff09;用户级线程&#xff08;2&#xff09;内核级线程 &#xff08;二&#xff09;多线程模型&#xff08;1&#xff09;一对一模型&#xff08;2&#xff09;多对一模…

stable diffusion webUI之赛博菩萨【秋葉】——工具包新手安裝与使用教程

stable diffusion webUI之赛博菩萨【秋葉】——工具包新手安裝与使用教程 AI浪潮袭来&#xff0c;还是学习学习为妙赛博菩萨【秋葉】简介——&#xff08;葉ye&#xff0c;四声&#xff0c;同叶&#xff09;A绘世启动器.exe&#xff08;sd-webui-aki-v4.6.x&#xff09;工具包安…

VirtualBox虚拟机配置双网卡

安装完后Linux后。下一步需要设置Linux的网络。为了便于学习测试&#xff0c;通常我们需要虚拟机能通宿主机和外网。类似达到下面的效果。虚拟机跟宿主本机和外网&#xff0c;及另外一台同网段的虚拟机也是相通 解决思路是-->配置双网卡&#xff0c;网卡1使用NAT网络模式&a…

vue组件中data为什么必须是一个函数

查看本专栏目录 关于作者 还是大剑师兰特&#xff1a;曾是美国某知名大学计算机专业研究生&#xff0c;现为航空航海领域高级前端工程师&#xff1b;CSDN知名博主&#xff0c;GIS领域优质创作者&#xff0c;深耕openlayers、leaflet、mapbox、cesium&#xff0c;canvas&#x…