You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R中处理鞋类价格数据集:拆分价格范围与缺失值清理

R语言处理亚马逊鞋类数据集完整方案

1. 准备工作:安装并加载必要工具包

新手处理这类数据,推荐用tidyverse套件(整合数据处理、绘图工具),以及jsonlite读取JSON格式数据:

# 首次运行时安装包
install.packages(c("tidyverse", "jsonlite"))

# 加载包
library(tidyverse)
library(jsonlite)

2. 读取数据集

将JSON格式的数据集导入R环境(确保文件路径正确):

shoes_data <- fromJSON("amazon_uk_shoes_dataset.json")

3. 数据清洗与转换

3.1 移除价格为空的行

直接过滤掉Price列值为"NAN"或空值的记录:

clean_data <- shoes_data %>%
  filter(Price != "NAN" & !is.na(Price))

3.2 拆分价格范围为单独行

利用separate_rows函数,把包含价格范围(如"$40 - $50")的行拆分为两行,分别对应两个价格:

split_data <- clean_data %>%
  separate_rows(Price, sep = " - ")

处理后的数据结构与你期望的一致,可通过head(split_data)查看前几行验证。

4. 计算各品牌均价

先清洗价格格式(去掉$符号)并转为数值类型,再按品牌分组计算均价:

# 转换价格为数值型
price_numeric <- split_data %>%
  mutate(Price_numeric = as.numeric(str_remove(Price, "\\$")))

# 分组计算均价(保留两位小数)
brand_avg_price <- price_numeric %>%
  group_by(Brand) %>%
  summarise(Average_Price = round(mean(Price_numeric, na.rm = TRUE), 2)) %>%
  ungroup()

5. 绘制品牌均价散点图

用ggplot2绘制散点图,直观展示各品牌价格差异:

ggplot(brand_avg_price, aes(x = Brand, y = Average_Price)) +
  geom_point(size = 3, color = "#2E86AB") +
  labs(title = "亚马逊英国站鞋类品牌均价", x = "品牌", y = "平均价格(美元)") +
  theme_minimal() +
  theme(
    axis.text.x = element_text(angle = 45, hjust = 1),
    plot.title = element_text(hjust = 0.5, size = 14, face = "bold")
  )

内容的提问来源于stack exchange,提问作者Shahzad Mukhtar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 14:30:44