Make your choice

Soluci贸n

Overview

Este problema nos pide retornar el n煤mero de filas y columnas presentes en el DataFrame players

Conceptos clave:

  • Atributo: En pandas, un atributo es una propiedad o caracter铆stica de un objeto que ayuda a describir el estado del objeto o su metainformaci贸n. Los atributos son usados para acceder a varias propiedades de una instancia de un DataFrame o Series, permitiendo obtener la metainformaci贸n o datos subyacentes sin realizar un c谩lculo o causar efectos secundarios.
  • shape attribute: Retorna una tupla (filas, columnas) con las dimensiones del DataFrame o Series.

Intuici贸n

Aqu铆 tenemos el paso a paso de la soluci贸n:

  1. Importar la librer铆a requerida:
import pandas as pd
  • Primero necesitamos importar la libreria pandas, la cual es una herramienta poderosa escrita en Python para manipulaci贸n y an谩lisis de datos.
  1. Definir la funci贸n:
def getDataframeSize(players: pd.DataFrame) -> List:
  • Esta l铆nea define una nueva funci贸n llamada getDataframeSize, la cual toma un DataFrame (players) como argumento y retorna una lista que contiene el n煤mero de filas y columnas en el DataFrame proporcionado.
  1. Usar el atributo shape:

Cada DataFrame en pandas tiene un atributo shape. Cuando se accede, regresa una tupla (con el n煤mero de filas, y el n煤mero de columnas). En nuestro caso, para el DataFrame dado, el atributo shape es igual a (10, 5) porque hay 10 jugadores y cada jugador tiene 5 columnas.

  1. Retornar el resultado deseado:
return [players.shape[0], players.shape[1]]
  • players.shape[0] regresa el n煤mero de filas en el DataFrame.
  • players.shape[1] nos da el n煤mero de columnas en el DataFrame.
  • Esta l铆nea por tanto regresa una lista con los dos valores especificados
    [players.shape[0], players.shape[1]].

Usar la soluci贸n

Visualizaci贸n del atributo shape

get the size of a dataframe fig1

Al pasar la siguiente tabla, contenida en un DataFrame, a la funci贸n getDataframeSize

player_id name age position team
846 Mason 21 Forward RealMadrid
749 Riley 30 Winger Barcelona
155 Bob 28 Striker ManchesterUnited
583 Isabella 32 Goalkeeper Liverpool
388 Zachary 24 Midfielder BayernMunich
883 Ava 23 Defender Chelsea
355 Violet 18 Striker Juventus
247 Thomas 27 Striker ParisSaint-Germain
761 Jack 33 Midfielder ManchesterCity
642 Charlie 36 Center-back Arsenal

Retornar谩:

[10, 5]

Implementaci贸n

import pandas as pd

from typing import List


def getDataframeSize(players: pd.DataFrame) -> List:
    return [
        players.shape[0],
        players.shape[1]
    ]

slackmart blog 漏 2024