2013-01-17 14 views
42

Ho un foglio di calcolo di Google con una colonna che assomiglia a questo:count valori distinti nel foglio di calcolo

City 
---- 
London 
Paris 
London 
Berlin 
Rome 
Paris 

Voglio contare le apparenze di ogni città distinti (quindi ho bisogno il nome della città e il numero di presenze).

City | Count 
-------+------ 
London | 2 
Paris | 2 
Berlin | 1 
Rome | 1 

Come faccio?

Grazie

+0

cancellato la mia risposta a causa di non ero in grado di creare un esempio di lavoro. Raccomando di dare un'occhiata a una combinazione con 'IF()' e 'COUNTIF()' – sascha

risposta

59

Link to Working Examples

Solution 0

Questo può essere accompished utilizzando tabelle pivot.

Pivot table Example - Count rows by value

Soluzione 1

Utilizzare il unique formula per ottenere tutti i valori distinti. Quindi utilizzare countif per ottenere il conteggio di ciascun valore. Vedere il collegamento dell'esempio di lavoro in alto per vedere esattamente come questo è implementato.

Unique Values  Count 
=UNIQUE(A3:A8)  =COUNTIF(A3:A8,B3) 
        =COUNTIF(A3:A8,B4) 
        ... 

Soluzione 2

Se si imposta i dati in quanto tale:

City  
----  
London 1 
Paris 1 
London 1 
Berlin 1 
Rome  1 
Paris 1 

allora quanto segue lo produrre il risultato desiderato.

=sort(transpose(query(A3:B8,"Select sum(B) pivot (A)")),2,FALSE) 

Sono sicuro che c'è un modo per sbarazzarsi della seconda colonna in quanto tutti i valori saranno 1. Non una soluzione ideale a mio parere.

via http://googledocsforlife.blogspot.com/2011/12/counting-unique-values-of-data-set.html

Altri collegamenti Possibilmente utili

+0

Che ha funzionato. Grazie. Strano che ho già applicato la seconda soluzione con un altro set, ma non ci ho pensato. –

+0

per la soluzione 2: puoi lasciare la colonna B vuota e quindi utilizzare "conteggio" anziché "somma": = ordina (trasposizione (query (A3: B8, "Seleziona conteggio (B) pivot (A)")), 2, FALSE) – wivku

+0

... ma come faccio a creare una tabella pivot? mentre questa risposta sembra grande e dettagliata, la risposta più diretta di dnlbrky è quella che mi ha salvato. qui, non ho nemmeno notato le soluzioni più semplici e alternative 1 e 2 fornite. Peccato :( – Balmipour

11

=iferror(counta(unique(A1:A100))) conta il numero di cellule unici da A1 a A100

+0

puoi spiegare la funzione di iferror() in questo caso? counta (unique (A1: A100)) mi ha dato il risultato che stavo cercando. – Stew

+3

L'OP non chiedeva un conteggio di valori univoci, ma se lo vuoi, puoi semplificarlo usando = COUNTUNIQUE (A: A) – wivku

0

Questo è simile alla Soluzione 1 da @JSuar ...

Si supponga che i dati della città originale siano un intervallo denominato dataCity.In un nuovo foglio, immettere il seguente:

A     | B 
    ---------------------------------------------------------- 
1 | =UNIQUE(dataCity) | Count 
2 |     | =DCOUNTA(dataCity,"City",{"City";$A2}) 
3 |     | [copy down the formula above] 
4 |     | ... 
5 |     | ... 
1

Non è esattamente ciò che l'utente ha chiesto, ma un modo semplice per appena contare valori unici:

Google ha introdotto un new function per contare valori unici in un solo passo, ed è possibile utilizzare questo come un input per le altre formule:

=COUNTUNIQUE(A1:B10)

+1

Questo restituirà solo 1 numero. il conteggio dei valori univoci, tuttavia l'OP ha chiesto come contare ciascun valore univoco –

+2

@JoshuaDance Hai ragione, ma il post dell'opzione è chiamato "conteggio di valori distinti nel foglio di calcolo". Sembra una risposta legittima a questo preciso e domanda a me. Basta notare che non conta "cella vuota" come valore – Balmipour

+1

@JoshuaDance grazie per averlo indicato –

2

è possibile utilizzare la funzione di query, quindi, se i dati fossero in co l A dove la prima fila è stato il titolo della colonna ...

=query(A2:A,"select A, count(A) where A != '' group by A order by count(A) desc label A 'City'", 0) 

produce

City count 
London 2 
Paris 2 
Berlin 1 
Rome 1 

Link a lavorare Google Foglio.

https://docs.google.com/spreadsheets/d/1N5xw8-YP2GEPYOaRkX8iRA6DoeRXI86OkfuYxwXUCbc/edit#gid=0

+0

Questa tecnica ha funzionato bene ed era più facile da applicare nel mio caso particolare. Tuttavia, stranamente, la query sembrava interrompersi (cioè, non avrebbe prodotto nulla) se ci fosse più di un valore numerico distinto nella colonna che viene contata. Ha funzionato quando ho convertito i valori numerici ai loro equivalenti di stringa però. –

+0

@MattV. Ho provato ad aggiungere valori numerici distinti alla colonna che viene contata e la query ha funzionato bene. https://docs.google.com/spreadsheets/d/1N5xw8-YP2GEPYOaRkX8iRA6DoeRXI86OkfuYxwXUCbc/edit#gid=0&range=A1:D10 –

Problemi correlati