Yelp数据集的结构

2024-01-18 03:20
文章标签 数据 结构 yelp

本文主要是介绍Yelp数据集的结构,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Yelp数据集的结构

第一章:yelp_academic_dataset_review.json的结构


提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • Yelp数据集的结构
  • 一、Yelp数据集组成
  • 二、yelp_academic_dataset_review.json文件
    • 1、首先将文件的前20行导出
    • 2、数据(一行)


一、Yelp数据集组成

Yelp数据集主要由五部分组成,分别是

yelp_academic_dataset_business.json包含了Yelp商家信息的数据
每个商家的信息都以JSON格式存储,包括商家的名称、地址、经纬度坐标、类别(如餐厅、咖啡馆等)、营业时间、星级评分以及其他相关信息。这个文件用于描述Yelp平台上注册的商家的基本信息。
yelp_academic_dataset_checkin.json包含用户在Yelp平台上进行签到(Check-in)的数据
签到是指用户在实体店面(如餐厅、商店等)实际到达的时间点记录。这个文件存储了用户签到的时间和商家的信息,可以用于分析用户活动模式和商家受欢迎程度。
yelp_academic_dataset_review.json包含了Yelp用户对商家的评论数据
每条评论都以JSON格式存储,包括用户ID、商家ID、评分、评论文本、评论时间等信息。这个文件是Yelp数据集中最重要的部分,用于进行情感分析、自然语言处理和用户行为分析等任务。
yelp_academic_dataset_tip.json: 包含用户在Yelp平台上对商家的小费(Tip)数据
小费是指用户给予商家的建议、提示或推荐,类似于评论但通常更为简短。每条小费数据都包含了用户ID、商家ID、小费文本、小费时间等信息。
yelp_academic_dataset_user.json: 包含了Yelp平台上用户的基本信息
每个用户的数据都以JSON格式存储,包括用户ID、姓名、注册时间、好友列表、评分分布、评论数量等信息。这个文件提供了关于Yelp用户的一些统计信息和行为模式。

在这里插入图片描述
这里我们只讨论yelp_academic_dataset_review.json

二、yelp_academic_dataset_review.json文件

1、首先将文件的前20行导出

import json
file_path="./yelp-dataset/yelp_academic_dataset_review.json"
output_file_path="./yelp_review.txt"
with open(file_path, 'r') as file:# 创建一个空列表来保存前20行数据json_lines = []# 逐行读取JSON文件并解析每一行的数据for i, line in enumerate(file):try:data = json.loads(line)json_lines.append(json.dumps(data))  # 将解析后的数据重新转换为JSON格式的字符串并保存到列表中# 判断是否已经读取了20行数据,如果是,则跳出循环if i == 19:breakexcept json.JSONDecodeError:print(f"Error decoding JSON on line {i+1}")# 将前20行的JSON数据保存到txt文件中
with open(output_file_path, 'w') as output_file:for line in json_lines:output_file.write(line + '\n')print("前20行JSON数据已保存到txt文件中。")

在这里插入图片描述

2、数据(一行)

{
“review_id”: “KU_O5udG6zpxOg-VcAEodg”,
“user_id”:“mh_-eMZ6K5RLWhZyISBhwA”, “business_id”: “XQfwVwDr-v0ZS3_CbbE5Xw”,
“stars”: 3.0,
“useful”: 0,
“funny”: 0,
“cool”: 0,
“text”: “If you decide to eat here, just be aware it is going to take about 2 hours from beginning to end. We have tried it multiple times, because I want to like it! I have been to it’s other locations in NJ and never had a bad experience. \n\nThe food is good, but it takes a very long time to come out. The waitstaff is very young, but usually pleasant. We have just had too many experiences where we spent way too long waiting. We usually opt for another diner or restaurant on the weekends, in order to be done quicker.”,
“date”: “2018-07-07 22:09:11”
}

这段JSON数据包含了一条Yelp用户对商家的评论信息,以下是该数据的中文解释:

1. "review_id": "KU_O5udG6zpxOg-VcAEodg"

评论的唯一标识符,用于区分不同的评论记录。

2. "user_id": "mh_-eMZ6K5RLWhZyISBhwA"

用户的唯一标识符,用于区分不同的用户。

3. "business_id": "XQfwVwDr-v0ZS3_CbbE5Xw"

商家的唯一标识符,用于指示该评论所属的商家。

4. "stars": 3.0

用户对商家的星级评分,范围通常是1到5,表示对商家的满意程度。

5. "useful": 0

其他用户对这条评论的评价,表示该评论对其他用户是否有用。

6. "funny": 0

其他用户对这条评论是否觉得有趣或幽默。

7. "cool": 0

其他用户对这条评论是否觉得酷或有品味。

8. "text":

“If you decide to eat here, just be aware it is going to take about 2 hours from beginning to end. We have tried it multiple times, because I want to like it! I have been to its other locations in NJ and never had a bad experience. \n\nThe food is good, but it takes a very long time to come out. The waitstaff is very young, but usually pleasant. We have just had too many experiences where we spent way too long waiting. We usually opt for another diner or restaurant on the weekends, in order to be done quicker.”
用户撰写的评论文本,对用户在该商家就餐的体验和观点进行描述。

9. "date": "2018-07-07 22:09:11"

评论发布的日期和时间

这篇关于Yelp数据集的结构的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/617957

相关文章

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

GSON框架下将百度天气JSON数据转JavaBean

《GSON框架下将百度天气JSON数据转JavaBean》这篇文章主要为大家详细介绍了如何在GSON框架下实现将百度天气JSON数据转JavaBean,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言一、百度天气jsON1、请求参数2、返回参数3、属性映射二、GSON属性映射实战1、类对象映

C# LiteDB处理时间序列数据的高性能解决方案

《C#LiteDB处理时间序列数据的高性能解决方案》LiteDB作为.NET生态下的轻量级嵌入式NoSQL数据库,一直是时间序列处理的优选方案,本文将为大家大家简单介绍一下LiteDB处理时间序列数... 目录为什么选择LiteDB处理时间序列数据第一章:LiteDB时间序列数据模型设计1.1 核心设计原则

Java+AI驱动实现PDF文件数据提取与解析

《Java+AI驱动实现PDF文件数据提取与解析》本文将和大家分享一套基于AI的体检报告智能评估方案,详细介绍从PDF上传、内容提取到AI分析、数据存储的全流程自动化实现方法,感兴趣的可以了解下... 目录一、核心流程:从上传到评估的完整链路二、第一步:解析 PDF,提取体检报告内容1. 引入依赖2. 封装

MySQL中查询和展示LONGBLOB类型数据的技巧总结

《MySQL中查询和展示LONGBLOB类型数据的技巧总结》在MySQL中LONGBLOB是一种二进制大对象(BLOB)数据类型,用于存储大量的二进制数据,:本文主要介绍MySQL中查询和展示LO... 目录前言1. 查询 LONGBLOB 数据的大小2. 查询并展示 LONGBLOB 数据2.1 转换为十

使用SpringBoot+InfluxDB实现高效数据存储与查询

《使用SpringBoot+InfluxDB实现高效数据存储与查询》InfluxDB是一个开源的时间序列数据库,特别适合处理带有时间戳的监控数据、指标数据等,下面详细介绍如何在SpringBoot项目... 目录1、项目介绍2、 InfluxDB 介绍3、Spring Boot 配置 InfluxDB4、I

Java整合Protocol Buffers实现高效数据序列化实践

《Java整合ProtocolBuffers实现高效数据序列化实践》ProtocolBuffers是Google开发的一种语言中立、平台中立、可扩展的结构化数据序列化机制,类似于XML但更小、更快... 目录一、Protocol Buffers简介1.1 什么是Protocol Buffers1.2 Pro

Java集合中的链表与结构详解

《Java集合中的链表与结构详解》链表是一种物理存储结构上非连续的存储结构,数据元素的逻辑顺序的通过链表中的引用链接次序实现,文章对比ArrayList与LinkedList的结构差异,详细讲解了链表... 目录一、链表概念与结构二、当向单链表的实现2.1 准备工作2.2 初始化链表2.3 打印数据、链表长

Python实现数据可视化图表生成(适合新手入门)

《Python实现数据可视化图表生成(适合新手入门)》在数据科学和数据分析的新时代,高效、直观的数据可视化工具显得尤为重要,下面:本文主要介绍Python实现数据可视化图表生成的相关资料,文中通过... 目录前言为什么需要数据可视化准备工作基本图表绘制折线图柱状图散点图使用Seaborn创建高级图表箱线图热