„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Amazon-Produktdatensatz

Amazon-Produktdatensatz

Veröffentlicht am 29.08.2024
Durchsuche:122

Hallo, ich habe in Kaggle einen Datensatz von Amazon-Produkten gefunden und beschlossen, einen Zusammenhang zwischen Preis und Sternebewertung zu finden.

Vollständiger Code in:
https://github.com/victordalet/Kaggle_analysis/tree/feat/amazon_products


I – Daten vorbereiten

Dazu verwende ich SQLAlchemy, um die CSV-Datei in eine kleine Datenbank zu konvertieren und die Informationen grafisch darzustellen.

pip install SQLAlchemy
pip install plotly

Im folgenden Skript extrahiere ich die Daten und erhalte:

  • Verhältnis zwischen Preis und Anzahl der Sterne
  • endgültige Bewertung und Anzahl der Sterne
  • Preis und Anzahl der Sterne
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 - Ergebnis

Preis und Bezeichnung

Amazon product dataset

Preis und Anzahl der Notationen

Amazon product dataset

Notation und Anzahl der Meinungen

Amazon product dataset

III – Fazit

Wir sehen, dass es nicht unbedingt einen Zusammenhang zwischen Preis und Bewertung gibt, aber je höher der Preis, desto niedriger die Bewertung und je mehr Bewertungen, desto höher die Bewertung.
Das erscheint logisch, denn wenn ein Produkt oft gekauft wird, bedeutet das, dass es beliebt ist.

Freigabeerklärung Dieser Artikel ist abgedruckt unter: https://dev.to/victordalet/amazon-product-dataset-h00?1 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3