«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Набор данных о продуктах Amazon

Набор данных о продуктах Amazon

Опубликовано 29 августа 2024 г.
Просматривать:250

Привет, я нашел набор данных о продуктах Amazon в Kaggle и решил найти взаимосвязь между ценой и звездным рейтингом.

Полный код:
https://github.com/victordalet/Kaggle_anaанализ/tree/feat/amazon_products


Я - Подготовка данных

Для этого я использую SQLAlchemy для преобразования файла csv в небольшую базу данных и построения графиков для отображения информации.

pip install SQLAlchemy
pip install plotly

В следующем скрипте я извлекаю данные и получаю:

  • соотношение цены и количества звезд
  • окончательный рейтинг и количество звезд
  • цена и количество звезд
import pandas as pd
from sqlalchemy import create_engine, text
import plotly.express as px


class Main:
    def __init__(self):
        self.result = None
        self.connection = None

        self.engine = create_engine("sqlite:///my_database.db", echo=False)
        self.df = pd.read_csv("amazon_product.csv")
        self.df.to_sql("products", self.engine, index=False, if_exists="append")

        self.get_data()
        self.transform_data()
        self.display_graph()
        self.get_data_number_start_and_price()
        self.transform_data()
        self.display_graph()
        self.get_data_number_start_and_start()
        self.display_graph()

    def get_data(self):
        self.connection = self.engine.connect()
        query = text(
            "SELECT product_price, product_star_rating FROM products where product_price != '$0.00'"
        )
        self.result = self.connection.execute(query).fetchall()

    def get_data_number_start_and_price(self):
        query = text(
            "SELECT product_price, product_num_ratings FROM products where product_price != '$0.00'"
        )
        self.result = self.connection.execute(query).fetchall()

    def get_data_number_start_and_start(self):
        query = text(
            "SELECT product_star_rating, product_num_ratings FROM products where product_price != '$0.00'"
        )
        self.result = self.connection.execute(query).fetchall()
        for i in range(len(self.result)):
            self.result[i] = [self.result[i][0], self.result[i][1]]

    def transform_data(self):
        for i in range(len(self.result)):
            self.result[i] = [float(self.result[i][0].split("$")[1]), self.result[i][1]]

    def display_graph(self):
        fig = px.scatter(
            self.result, x=0, y=1, title="Amazon Product Price vs Star Rating"
        )
        fig.show()


Main()

II - Результат

Цена и обозначения

Amazon product dataset

Цена и количество обозначений

Amazon product dataset

Обозначения и количество мнений

Amazon product dataset

III – Заключение

Мы видим, что между ценой и рейтингом не обязательно существует связь, но чем выше цена, тем ниже рейтинг, а чем больше отзывов, тем выше рейтинг.
Это кажется логичным, ведь если товар покупают много, значит, он популярен.

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/victordalet/amazon-product-dataset-h00?1. В случае нарушения прав свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3