Unika Värden
Data dupliceras ofta i DataFrames. Till exempel, i countries
DataFrame, har kolumnen 'continent'
upprepade poster. Det finns en metod som hämtar en array av distinkta värden från en specifik DataFrame-kolumn.
9
1
2
3
4
5
6
7
import pandas as pd
country_data = {'country' : ['Thailand', 'Philippines', 'Monaco', 'Malta', 'Sweden', 'Paraguay', 'Latvia'],
'continent' : ['Asia', 'Asia', 'Europe', 'Europe', 'Europe', 'South America', 'Europe'],
'capital':['Bangkok', 'Manila', 'Monaco', 'Valletta', 'Stockholm', 'Asuncion', 'Riga']}
countries = pd.DataFrame(country_data)
print(countries)
1234567import pandas as pd country_data = {'country' : ['Thailand', 'Philippines', 'Monaco', 'Malta', 'Sweden', 'Paraguay', 'Latvia'], 'continent' : ['Asia', 'Asia', 'Europe', 'Europe', 'Europe', 'South America', 'Europe'], 'capital':['Bangkok', 'Manila', 'Monaco', 'Valletta', 'Stockholm', 'Asuncion', 'Riga']} countries = pd.DataFrame(country_data) print(countries)
Nu ska vi tillämpa unique()
metoden på kolumnerna 'continent'
och 'country'
:
99
1
2
3
4
5
6
7
8
9
10
import pandas as pd
country_data = {'country' : ['Thailand', 'Philippines', 'Monaco', 'Malta', 'Sweden', 'Paraguay', 'Latvia'],
'continent' : ['Asia', 'Asia', 'Europe', 'Europe', 'Europe', 'South America', 'Europe'],
'capital':['Bangkok', 'Manila', 'Monaco', 'Valletta', 'Stockholm', 'Asuncion', 'Riga']}
countries = pd.DataFrame(country_data)
unique_countries = countries['country'].unique()
unique_continents = countries['continent'].unique()
print(unique_countries)
print(unique_continents)
12345678910import pandas as pd country_data = {'country' : ['Thailand', 'Philippines', 'Monaco', 'Malta', 'Sweden', 'Paraguay', 'Latvia'], 'continent' : ['Asia', 'Asia', 'Europe', 'Europe', 'Europe', 'South America', 'Europe'], 'capital':['Bangkok', 'Manila', 'Monaco', 'Valletta', 'Stockholm', 'Asuncion', 'Riga']} countries = pd.DataFrame(country_data) unique_countries = countries['country'].unique() unique_continents = countries['continent'].unique() print(unique_countries) print(unique_continents)
För att räkna antalet unika värden i en specifik kolumn kan du använda metoden nunique()
:
9
1
2
3
4
5
6
7
import pandas as pd
country_data = {'country' : ['Thailand', 'Philippines', 'Monaco', 'Malta', 'Sweden', 'Paraguay', 'Latvia'],
'continent' : ['Asia', 'Asia', 'Europe', 'Europe', 'Europe', 'South America', 'Europe'],
'capital':['Bangkok', 'Manila', 'Monaco', 'Valletta', 'Stockholm', 'Asuncion', 'Riga']}
countries = pd.DataFrame(country_data)
print(countries['continent'].nunique())
1234567import pandas as pd country_data = {'country' : ['Thailand', 'Philippines', 'Monaco', 'Malta', 'Sweden', 'Paraguay', 'Latvia'], 'continent' : ['Asia', 'Asia', 'Europe', 'Europe', 'Europe', 'South America', 'Europe'], 'capital':['Bangkok', 'Manila', 'Monaco', 'Valletta', 'Stockholm', 'Asuncion', 'Riga']} countries = pd.DataFrame(country_data) print(countries['continent'].nunique())
Uppgift
Swipe to start coding
Du har fått en DataFrame
som heter audi_cars
.
- Identifiera alla distinkta värden i kolumnen
'year'
och lagra resultatet i kolumnenunique_years
. - Identifiera alla distinkta värden i kolumnen
'fueltype'
och lagra resultatet i variabelnunique_fueltype
. - Bestäm antalet unika bränsletyper och lagra resultatet i variabeln
count_unique_fueltypes
.
Lösning
99
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import pandas as pd
cars_data = {'model': ['audi A1', 'audi A6', 'audi A4', 'audi A3','audi A1'],
'year': [2017, 2016, 2017, 2019, 2016],
'fueltype': ['petrol', 'diesel', 'diesel', 'petrol', 'petrol'],
'capital': ['Manila', 'Monaco', 'Bangkok', 'Stockhol', 'Valletta']}
audi_cars = pd.DataFrame(cars_data)
# Write your code below
unique_years = audi_cars['year'].unique()
unique_fueltype = audi_cars['fueltype'].unique()
count_unique_fueltypes = audi_cars['fueltype'].nunique()
# Testing the result
print(unique_years)
print(unique_fueltype)
print(count_unique_fueltypes)
Var allt tydligt?
Tack för dina kommentarer!
Avsnitt 3. Kapitel 15
99
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import pandas as pd
cars_data = {'model': ['audi A1', 'audi A6', 'audi A4', 'audi A3','audi A1'],
'year': [2017, 2016, 2017, 2019, 2016],
'fueltype': ['petrol', 'diesel', 'diesel', 'petrol', 'petrol'],
'capital': ['Manila', 'Monaco', 'Bangkok', 'Stockhol', 'Valletta']}
audi_cars = pd.DataFrame(cars_data)
# Write your code below
unique_years = ___
unique_fueltype = ___
count_unique_fueltypes = ___
# Testing the result
print(unique_years)
print(unique_fueltype)
print(count_unique_fueltypes)
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal