Análise de datos de cantantes
- Duración:
- 50 min
- Agrupamento:
- 2
Ides crear un DataFrame con cantantes e algúns datos curiosos, podes buscar na web actualizacións ou novos datos para incluir:
data = {
'Cantante': ['Taylor Swift', 'Paul McCartney', 'Bruce Springsteen', 'Adele', 'Kim Kardashian'],
'Gañancias (millóns de $)': [1043, 1300, 650, 1000, 2000],
'Posesións': ["Chicle de Céline Dion", "Subasta de $25,000 de Janet Jackson", None, None, None],
'Parellas': [None, None, None, 'Simon Konecki', 'Kanye West (ex)']
}
Tarefas:
- Crear e imprimir o DataFrame
- Seleccionar as columnas Cantante e Gañancias e imprimilas
- Filtrar e imprimir as gañancias maiores de 700 millóns
- Agregar unha columna que mostre a porcentaxe de gañancias de cada cantante con respecto ó total
Lembra:A IA está para axudarche, pregúntalle!
Exemplo de resultado esperado
DataFrame inicial
| Cantante | Gañancias (millóns de $) | Posesións | Parellas |
|---|---|---|---|
| Taylor Swift | 1043 | Chicle de Céline Dion | None |
| Paul McCartney | 1300 | Subasta de $25,000 de Janet Jackson | None |
| Bruce Springsteen | 650 | None | None |
| Adele | 1000 | None | Simon Konecki |
| Kim Kardashian | 2000 | None | Kanye West (ex) |
Gañancias dos cantantes
| Cantante | Gañancias (millóns de $) |
|---|---|
| Taylor Swift | 1043 |
| Paul McCartney | 1300 |
| Bruce Springsteen | 650 |
| Adele | 1000 |
| Kim Kardashian | 2000 |
Cantantes con gañancias superiores a 700 millóns de dólares
| Cantante | Gañancias (millóns de $) | Posesións | Parellas |
|---|---|---|---|
| Taylor Swift | 1043 | Chicle de Céline Dion | None |
| Paul McCartney | 1300 | Subasta de $25,000 de Janet Jackson | None |
| Adele | 1000 | None | Simon Konecki |
| Kim Kardashian | 2000 | None | Kanye West (ex) |
DataFrame con porcentaxe de gañancias
| Cantante | Gañancias (millóns de $) | Posesións | Parellas | Porcentaxe de Gañancias |
|---|---|---|---|---|
| Taylor Swift | 1043 | Chicle de Céline Dion | None | 17.40% |
| Paul McCartney | 1300 | Subasta de $25,000 de Janet Jackson | None | 21.69% |
| Bruce Springsteen | 650 | None | None | 10.84% |
| Adele | 1000 | None | Simon Konecki | 16.69% |
| Kim Kardashian | 2000 | None | Kanye West (ex) | 33.38% |
Código Python: Análise de datos de cantantes
# Importamos a libraría pandas, que nos permite traballar con datos de maneira eficiente
import pandas as pd
# ---- ACTIVIDADE 1: CREACIÓN DO DATAFRAME ----
# Creamos un dicionario chamado 'data' que contén información sobre varios cantantes
data = {
'Cantante': ['Taylor Swift', 'Paul McCartney', 'Bruce Springsteen', 'Adele', 'Kim Kardashian'],
'Gañancias (millóns de $)': [1043, 1300, 650, 1000, 2000],
'Posesións': ["Chicle de Céline Dion", "Subasta de $25,000 de Janet Jackson", None, None, None], # Algúns valores están como None (faltan datos)
'Parellas': [None, None, None, 'Simon Konecki', 'Kanye West (ex)']
}
# Convertimos o dicionario nun DataFrame de pandas, que é unha estrutura de datos tabular
df = pd.DataFrame(data)
# Mostramos o DataFrame por pantalla para visualizar os datos nun formato tabular
print("DataFrame inicial:")
print(df)
# ---- ACTIVIDADE 2: SELECCIÓN DE DATOS ----
# Seleccionamos as columnas 'Cantante' e 'Gañancias (millóns de $)' para traballar só con esa información
ganancias = df[['Cantante', 'Gañancias (millóns de $)']]
# Mostramos as gañancias por cantante
print("\nGañancias dos cantantes:")
print(ganancias)
# ---- ACTIVIDADE 3: FILTRADO DE DATOS ----
# Filtramos só cantantes que teñen gañancias superiores a 700 millóns de dólares
filtro_ganancias = df[df['Gañancias (millóns de $)'] > 700]
# Mostramos o resultado do filtro
print("\nCantantes con gañancias superiores a 700 millóns de dólares:")
print(filtro_ganancias)
# ---- ACTIVIDADE 4: AGREGACIÓN DE COLUMNAS ----
# Calculamos a suma total das gañancias
total_ganancias = df['Gañancias (millóns de $)'].sum()
# Agregamos unha nova columna ca porcentaxe de gañancias de cada cantante respecto ao total
df['Porcentaxe de Gañancias'] = (df['Gañancias (millóns de $)'] / total_ganancias) * 100
# Mostramos o DataFrame actualizado, agora coa columna de porcentaxe de gañancias incluída
print("\nDataFrame con porcentaxe de gañancias:")
print(df)