Statistiche incoerenti dalla query "Statistiche sulla partecipazione degli utenti"

Perché il mio report continua a produrre gli stessi risultati da mesi? Sto eseguendo un report basato sull’attività fin dall’inizio della community. La community è diventata sempre più attiva per tutto questo tempo.

Ad esempio, un utente risulta nei risultati della query come avente 271 argomenti visualizzati, mentre il riepilogo del suo profilo indica 1,2k argomenti visualizzati.

Eseguendo rapidamente la query qui su Meta, le statistiche si aggiornano quando modifico il valore di ‘durata’, quindi non sembra bloccarsi da nessuna parte. L’ho anche eseguita per una durata di 90 giorni e l’ho confrontata con un utente nuovo di zecca la cui attività principale si è svolta in quel periodo, e le sue statistiche corrispondono al suo riepilogo.

C’è qualcos’altro che potrei controllare per vedere se riesco a replicare?

1 Mi Piace

Forse potresti chiarirmi una cosa.

Sto cercando di eseguire una query a partire da 439 giorni fa (guardando la data di iscrizione di un utente specifico come test) e scegliendo la data di durata come lo stesso numero di giorni. Avevo capito che questo avrebbe incluso tutti i loro dati di partecipazione dalla loro iscrizione. Tuttavia, i dati non lo riflettono.

Come potrei ottenere questo risultato?

1 Mi Piace

Sembra anche che una query sulle statistiche di partecipazione degli utenti, risalente a 439 giorni fa fino ad ora, includa solo i membri che erano già registrati e attivi in quel momento. Non include i dati di partecipazione dei membri che si sono registrati successivamente ed erano attivi in quel lasso di tempo.

Qualcuno può aiutarmi a personalizzare il report per crearne uno che catturi i dati di cui ho bisogno? Conosco l’SQL solo a livello superficiale.

1 Mi Piace

Guardando il report, sembra essere in ordine di visite con il più alto in cima - quindi chiunque si sia unito a metà della finestra temporale selezionata sarà da qualche parte in fondo alla lista (e la lista visibile è limitata a 1000, anche se penso che tu possa ottenere 10.000 se esporti i risultati come CSV).

Possiamo però creare una query personalizzata. :+1: Che dati stai cercando esattamente?

1 Mi Piace

Non abbiamo nemmeno così tanti membri… ancora, quindi tutto bene lì.

evvai

Una cosa che sarebbe utile chiarire è come viene calcolata ciascuna colonna. Ci sono discrepanze tra il CSV e ciò che è sulla pagina Riepilogo profilo di un membro (nota: stiamo confrontando solo questi due diversi set di dati in cui le date della query corrispondono al ciclo di vita dell’iscrizione del membro).

  1. statistiche di partecipazione per tutti i membri con 1 o più visite, indipendentemente da quando durante il periodo di query si sono uniti
  2. le statistiche vengono estratte alla fine di ogni mese per mostrare la partecipazione cumulativa dal lancio della nostra nuova community.

Abbiamo pensato, dato il lasso di tempo :from_days_ago e :duration_days della query, che fossero questi i dati che stava producendo.

1 Mi Piace

Ci ho dato un’occhiata stamattina per vedere se riuscivo a scoprire di più. Il mio va in timeout quando provo a tornare indietro di 498 giorni (alla mia data di inizio :slight_smile:), ma sono riuscito a ottenerne uno per un anno, quindi posso confrontarlo approssimativamente con le Statistiche Utente. :+1: (più o meno qualche ora di dati)

C’è una differenza per posts_created, topics_created, likes_given e likes_received tra i due - e dando un’occhiata più da vicino all’SQL sembra che la query User Participation Statistics non escluda post eliminati, sussurri o PM, il che potrebbe spiegarlo.

I topics_viewed e posts_viewed sembrano abbastanza accurati per entrambi. :+1:

Non sono sicuro del motivo per cui alcuni dei tuoi utenti non vengono visualizzati? L’unico criterio di esclusione che penso di vedere è che devono aver letto più di 0 post nella finestra temporale - il che dovrebbe includere praticamente tutti, a parte gli utenti staged.


pr AS (
    SELECT user_id, COUNT(1) AS visits,
        SUM(posts_read) AS posts_read
    FROM user_visits, t
    WHERE posts_read > 0
        AND visited_at > t.START
        AND visited_at < t.END
    GROUP BY
        user_id

Continuerò a scavare e vedrò se riesco a trovare di più. :slight_smile: :+1:

Le mie discrepanze sono inverse: i numeri delle query sono più piccoli, non più grandi.

Quando inserisco 441 in :from_days_ago e 441 in :duration_days ottengo questi (sotto). Rispetto a questo report per lo stesso intervallo di tempo (almeno… per l’utente evidenziato).

Penso che tu ne abbia bisogno a 0 e 441 se vuoi avere la finestra da oggi indietro di 441 giorni?

:woman_facepalming:t4: Me ne sono reso conto pochi minuti prima della tua risposta, hahaha. Grazie per la tua pazienza.

Ho cambiato :from_days_ago in 0 e tutto nella vita ha senso!! :partying_face:

Sembra che il mio cervello stesse lavorando cronologicamente per quanto riguarda il significato di :duration_days. Pensavo che :from_days_ago fosse il primo giorno in cui la query avrebbe estratto dati, per poi continuare a farlo, lavorando cronologicamente nel tempo (cioè dati di 441 giorni fa, 440 giorni fa, 439 giorni fa e così via fino al tempo presente). Sembra che estragga i dati in ordine cronologico inverso. Capito!

1 Mi Piace

Ah. Nessun problema. :slightly_smiling_face: Ho imparato molto studiando quel rapporto, quindi è stato comunque molto utile. :slightly_smiling_face:

2 Mi Piace

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.