Johnnyeee/Yelpdata_663
收藏数据集卡片 for Yelp 餐厅数据集
数据集描述
原始数据集概述
Yelp 原始数据包含来自 Yelp 平台的丰富信息,详细记录了用户评论、商家评分和运营细节等。具体包括以下五个不同的 JSON 数据集:
yelp_academic_dataset_business.json(118.9MB):包含商家信息,如名称、地址、城市、州、邮政编码、纬度和经度、星级(平均评分)、评论数量、类别(如餐厅、购物等)和其他属性。yelp_academic_dataset_checkin.json(287MB):提供用户在商家处签到的数据,包括商家 ID 和一系列时间戳,显示用户在不同时间和日期的签到情况。yelp_academic_dataset_review.json(5.34GB):包含用户对商家的评论,每条评论包括用户 ID、商家 ID、星级(1 到 5)、有用/有趣/酷的投票、评论文本和发布日期。yelp_academic_dataset_tip.json(180.6MB):包含用户对商家的提示,通常包含建议、赞扬或对未来顾客的建议。yelp_academic_dataset_user.json(3.36GB):包含 Yelp 用户的数据,包括用户 ID、姓名、评论数量、加入 Yelp 的日期、朋友(Yelp 上的朋友列表)、有用/有趣/酷的投票数量、粉丝(标记他们为“粉丝”的用户数量)和平均星级。
语言
Yelp 数据集主要由英语文本组成,包括评论、商家信息和用户互动。
数据集处理
在本项目中,我们将仅使用 yelp_academic_dataset_business.json 和 yelp_academic_dataset_review.json,并专注于餐厅数据。处理步骤如下:
- 将
yelp_academic_dataset_business.json和yelp_academic_dataset_review.json加载为 pandas DataFrame。 - 根据
business_id进行内连接,并过滤掉非餐厅的商家(过滤掉categories不包含 "restaurants" 的行)。 - 将 Yelp 餐厅数据集随机打乱并按 80/20 分割为训练集和测试集。
- 最终得到 Yelp 餐厅训练数据集和测试数据集。
餐厅数据集
餐厅数据集概述
yelptrain_data.parquet:包含商家详细信息,如位置、评分和顾客评论。包括 3,778,658 行,大小为 2.26 GB。yelptest_data.parquet:包含与yelptrain_data.parquet相同的信息,包括 943,408 行,大小为 591 MB。
预期任务
- 情感分析:通过检查文本评论,使用自然语言处理来衡量顾客对商家的情感,将意见分类为正面、负面或中性。
- 评分预测:机器学习模型可以利用用户和商家属性来预测商家可能收到的评分,帮助理解影响顾客满意度的因素。
- 商业分析:分析商业绩效指标,如平均评分、评论数量和运营状态,可以为商家提供市场地位和顾客感知的洞察。
- 推荐系统:数据可以输入推荐算法,根据用户偏好、以往评分和类似用户行为向用户推荐商家。
餐厅数据集结构
变量
- business_id: 商家在数据集中的唯一标识符。(非空,对象)
- name: 商家的名称。(非空,对象)
- address: 商家的街道地址。(非空,对象)
- city: 商家所在城市。(非空,对象)
- state: 商家所在州或地区。(非空,对象)
- postal_code: 与商家位置相关的邮政编码。(非空,对象)
- latitude: 商家地理位置的纬度坐标。(非空,float64)
- longitude: 商家地理位置的经度坐标。(非空,float64)
- stars_x: 商家的平均星级评分。(非空,float64)
- review_count: 商家收到的评论数量。(非空,int64)
- is_open: 表示商家是否开放的二进制变量(1 表示开放,0 表示关闭)。(非空,int64)
- attributes: 关于商家的属性集合,如“接受信用卡”、“停车”、“Wi-Fi”等。(包含缺失值,对象)
- categories: 商家所属的类别,如“餐厅”、“食品”、“咖啡”等。(非空,对象)
- hours: 商家的营业时间。(包含缺失值,对象)
- review_id: 每条评论的唯一标识符。(非空,对象)
- user_id: 留下评论的用户的唯一标识符。(非空,对象)
- stars_y: 用户在其评论中给出的星级评分。(非空,float64)
- useful: 认为评论有用的用户数量。(非空,int64)
- funny: 认为评论有趣的用户数量。(非空,int64)
- cool: 认为评论酷的用户数量。(非空,int64)
- text: 评论的文本内容。(非空,对象)
- date: 评论发布的日期。(非空,对象)
变量实例
{business_id: XQfwVwDr-v0ZS3_CbbE5Xw, name: Turning Point of North Wales, address: 1460 Bethlehem Pike, city: North Wales, state: PA, postal_code: 19454, latitude: 40.21019744873047, longitude: -75.22364044189453, stars_x: 3.0, review_count: 169.0, is_open: 1.0, categories: Restaurants, Breakfast & Brunch, Food, Juice Bars & Smoothies, American (New), Coffee & Tea, Sandwiches, hours: {"Monday": "7:30-15:0", "Tuesday": "7:30-15:0", "Wednesday": "7:30-15:0", "Thursday": "7:30-15:0", "Friday": "7:30-15:0", "Saturday": "7:30-15:0", "Sunday": "7:30-15:0"}, review_id: KU_O5udG6zpxOg-VcAEodg, user_id: mh_-eMZ6K5RLWhZyISBhwA, stars_y: 3.0, useful: 0.0, funny: 0.0, cool: 0.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 its other locations in NJ and never had a bad experience.
The 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, attributes: {"NoiseLevel": "uaverage", "HasTV": "False", "RestaurantsAttire": "casual", "BikeParking": "False", "Ambience": "{ ouristy: False, hipster: False, omantic: False, divey: False, intimate: False, rendy: False, upscale: False, classy: False, casual: True}", "WiFi": "free", "DogsAllowed": "False", "Alcohol": " one", "BusinessAcceptsCreditCards": "True", "RestaurantsGoodForGroups": "True", "RestaurantsPriceRange2": "2", "RestaurantsReservations": "False", "WheelchairAccessible": "True", "BusinessAcceptsBitcoin": "False", "RestaurantsTableService": "True", "GoodForKids": "True", "Caters": "False", "HappyHour": "False", "RestaurantsDelivery": "True", "GoodForMeal": "{dessert: False, latenight: False, lunch: True, dinner: False, runch: True, reakfast: True}", "OutdoorSeating": "True", "RestaurantsTakeOut": "True", "BusinessParking": "{garage: False, street: False, validated: False, lot: True, valet: False}"}}
使用
该数据集与 Hugging Face 的 datasets 库兼容。数据集类 YelpDataset 提供了有效访问结构化数据的方法,包括详细的商家信息、用户评论和用户档案。
入门指南
要在 Python 中开始使用 Yelp 数据集,请确保已安装 Hugging Face 的 datasets 库。然后,您可以使用提供的 YelpDataset 类加载数据集。示例如下:
from datasets import load_dataset
dataset = load_dataset("Johnnyeee/Yelpdata_663", trust_remote_code=True)
这将为您提供数据集结构和内容的快速概览,准备好进行分析或模型训练任务。
您还可以通过以下方式生成训练数据集示例:
next(iter((dataset[train])))
测试数据集示例:
next(iter((dataset[test])))




