Está en la página 1de 18

UBA - CBC - Pensamiento

Computacional
Cátedra: Camejo.

OM
Profesores: -
Días de cursada: Asincrónico.
Aula: -
.C
DD
Comisión: Sede Central UBA XXI (Ciudad
de Buenos Aires)
LA

Definiciones
Algoritmos
FI

Manejo de errores
Tablas


“Aprender a programar o pensar como un programador no sólo implica conocer


ciertos modelos, herramientas y técnicas, también es importante aprender a hablar
como ellos.”

Este archivo fue descargado de https://filadd.com


Definiciones
● Computadora: dispositivo físico de procesamiento de datos con propósito
general. Es capaz de procesar datos y obtener nueva información o
resultados.
● Software: conjunto de herramientas abstractas (programas). Se lo llama
como el componente lógico de un modelo computacional. Es lo que puedes
ver pero no tocar.
● Hardware: es el componente físico del dispositivo. Es decir que, el Software

OM
dirá qué hacer y el Hardware lo hará. Es lo que puedes ver y tocar.
● Modelo de Von Neumann: modelo de arquitectura de una Computadora que
consta de tres componentes o subsistemas a través de los cuales fluye la
información de una manera determinada.
○ Entrada - Salida (E/S): es donde la información entra y sale. Es el
primer y último paso del modelo.

.C
○ Memoria Interna (MI): es donde se alojan los datos, incluyendo los
programas y los datos temporales que se generen.
○ Unidad Central de Proceso (UCP): es quien realiza todas las
DD
transformaciones de datos, es decir, el proceso en sí.
● Modelo de Funcionamiento de Programa Almacenado: es el concepto que
implica que para poder ser ejecutado un programa debe ser cargado
previamente en la memoria interna (MI).
● Sistema Operativo (SO): programa encargado de la administración de los
LA

recursos y la solución a la disputa entre solicitudes de diferentes procesos.


Administra el equipo y responde a los programas que piden servicios.
Ejemplos de SOs son Windows, Linux, macOS, Android, iOS, Fuchsia,
ChromeOS, TempleOS, etc..
FI

● Programa: es un Algoritmo escrito en un Lenguaje de Programación. También


se lo puede describir como la suma de algoritmos (A) y datos (D) tal que P =
A + D.
● Dato: en el mundo de las Tecnologías de la Información, un dato es una


representación simbólica ya sea numérica o alfabética, cuyo valor está listo


para ser procesado por un ordenador y mostrarlo a un usuario en modo de
información.
● Algoritmo: serie finita de pasos precisos para alcanzar un objetivo.
● Lenguaje: es un protocolo de comunicación.
● Compilación: técnica de traducción de lenguaje el cual consiste en traducir
completamente un programa y sólo entonces puede ser ejecutado.
● Interpretación: técnica de traducción de lenguaje el cual consiste en traducir
sentencia a sentencia a medida que se solicita su ejecución.
● Programa fuente: es un archivo de instrucciones escrito en un lenguaje de
alto nivel. Se denominan así debido a que desde allí parten los traductores

Este archivo fue descargado de https://filadd.com


para generar una versión ejecutable. Generalmente se pueden editar con
cualquier editor, por muy básico que sea.
● Multi paradigma: un lenguaje con esta característica es equivalente a decir
que puedes construir programas con distintos enfoques o modelos de
resolución de problemas usando el mismo lenguaje.
● Multiplataforma: un lenguaje capaz de ser ejecutado en distintos sistemas
operativos.
● Flujo de control de un programa (FCP): la secuencia en que las sentencias se
ejecutan (la ejecución de la primera a la última línea, una por una, es un Flujo

OM
de Control Estándar en Python).
● Invocar: usar (ej: invocar una función = usar una función).
● Cuerpo de la función: las líneas que indican qué va a hacer una función.
● Sentencias estructuradas: sentencias que tienen una o varias líneas de
encabezado.
● Ámbito de la función: la memoria que dispone una función para ser ejecutada


.C
(con sus sentencias, datos y resultados).
Ciclos: cantidad constante de repeticiones. Sus componentes son la
invariante y el cuerpo.
DD
○ Invariante: es la parte de la sentencia que permite decidir si se
ejecutará el Cuerpo de ese Bucle una vez más o se abandonará el
mismo para proseguir con la sentencia siguiente al Ciclo.
Normalmente se escribe como una condición válida.
○ Cuerpo: es la parte del Bucle que se ejecutará repetidamente hasta
LA

que la evaluación de la Condición o Invariante diga lo contrario.


● Aspectos relevantes del bucle:
○ Cuerpo: Bloque de sentencias que se ejecuta por vuelta.
○ Condición o Invariante: Puerta de entrada/salida al Ciclo.
FI

○ Estado Previo: Valores de las variables de la Condición antes del Bucle.


○ Paso: Posibilidad de cambio de valor en alguna de las variables de la
Condición.
● Secuencias (type sequence): en Python es un grupo de elementos con una


organización interna; que se alojan de manera contigua en la memoria.


● String: es una Subclase de secuencia que sólo admite caracteres como
elementos.
● Tuplas (type tuple): son una secuencia inmutable y heterogénea de objetos
que pueden ser de cualquier tipo, a diferencia de las string que sólo pueden
tener caracteres.
● Listas (type list): son una secuencia genérica heterogénea mutable.
● Diccionario (type dict): es una Estructura que permite mapear un valor (clave)
con un grupo de datos.
● Estructuras de Datos persistentes: (perduran más allá de la vida de quien las
genera) se conocen genéricamente como archivos. Un archivo debe

Este archivo fue descargado de https://filadd.com


guardarse en algún dispositivo que administre datos no volátiles (es decir, no
desaparecen cuando se apaga el equipo).

Algoritmos
La creación de un algoritmo, para programadores, habitualmente consiste en los

OM
siguientes pasos:

1. Análisis del problema.


2. Primer esbozo de solución.
3. División del problema en partes.
4.

.C
Ensamble de las partes.
DD
Manejo de errores
Cuando de Sistemas y Programas hablamos:
LA

● El ingreso de datos es uno de los puntos de mayor frecuencia de errores.


● El ingreso de datos es el lugar más económico donde se pueden detectar y
salvar errores.
FI

Para intentar disminuir la tasa de errores en el ingreso podemos:

● Simplificar el formato de los datos o adaptarlos a sistemas de lectura




automática (códigos de barra, QR, etc.).


● Validar los ingresos.

A la hora de testear algo, como cuando se usa un while loop, hay que utilizar como
condición un ingreso inválido para que ofrecerle al usuario cuantas oportunidades
sean necesarias para que ingrese un dato válido. Un ejemplo sería:

par = int(input('Ingresá un número par: '))

Este archivo fue descargado de https://filadd.com


while par < 0 or par % 2 != 0: # También te serviría la condición
# par < 0 or par % 2.
par = int(input('Ingresá un número par: '))

print('Tu número es',par)

Una ejecución ejemplo podría ser:

OM
Ingresá un número par: 11
Ingresá un número par: 8
Tu número es 8
>>>

.C
Hay otros casos donde el usuario puede ingresar un tipo inválido de dato, como un
string en vez de un int. Estas situaciones podrían causar errores fatales en el
programa, por lo que también se recomienda validar ante estas situaciones. Una
DD
forma de manejar elegantemente esta situación sería aceptar el ingreso como
string, validar que el ingreso sea compatible con un número y recién castear:

# Solicita el ingreso de un string (aunque se espera un número).


num = input('Ingresá un número: ')
LA

# ¿Es compatible con un número?


# Si no es así, vuelve a pedirle un número al usuario.
while not num.isnumeric():
FI

num = input('Ingresá un número: ')

# Si es compatible con un número, imprímelo junto a un mensaje.


print('Tu número es',int(num))


Miremos una probable ejecución:

Ingresá un número: cxc


Ingresá un número: 3.66
Ingresá un número: 22
Tu número es 22
>>>

Este archivo fue descargado de https://filadd.com


Disponemos de la sentencia estructurada try/except que funciona básicamente
intentando realizar una acción (con try, intento con recaudos) y si tiene éxito, el
programa prosigue relajadamente, sin embargo, si en el intento emerge un error, la
sentencia lo captura y lo trata de una manera conveniente en la cláusula except. La
sintaxis es:

try:
<código a probar>
except:

OM
<código a ejecutar si hay un error>

Un ejemplo de uso sería:

sigue = True

while sigue:
try:
.C
DD
num = int(input('Ingresá un número entero: '))
sigue = False
except:
print('Debe ser un número entero')
LA

print('Tu número es',num)

Una ejecución posible sería:


FI

Ingresá un número entero: hola


Debe ser un número entero
Ingresá un número entero: 1.33


Debe ser un número entero


Ingresá un número entero: -77
Tu número es -77
>>>

Nota: Los errores deben escribirse exactamente como los identifica Python. En el ejemplo,
el Código de error que pretendemos capturar es: ValueError. Debe anotarse tal cual.

Este archivo fue descargado de https://filadd.com


sigue = True

while sigue:
try:
num = int(input('Ingresá un número entero: '))
sigue = False
except ValueError:
print('Debe ser un número entero')

print('Tu número es',num)

OM
En este caso la excepción se activará únicamente si el error que se produce es de
ese tipo.

Tablas

Tipo de dato
.C Ejemplos
DD
entero (int) 1, 2, 3, 4…

real (float) 0.55, 0.23897, 2.569, 0.0, -2.4…

complejo (complex) (10,9j) la componente con j del par indica la


parte imaginaria
LA

lógico (bool) true, false

texto (str) “¡Hola mundo!”


FI

Operadores aritméticos

Símbolo(s) Nombre Ejemplo(s)




+ Suma 10 + 10 = 20

- Resta 10 - 5 = 5

* Multiplicación 5 * 2 = 10

/ División con precisión decimal 10 / 3 = 3.33

// División entera 10 / 3 = 3

Este archivo fue descargado de https://filadd.com


% Resto 10 % 3 = 1 || 10 % 4 = 2

+= Suma abreviada, agrega 10 += 10 → 20

-= Resta abreviada, quita 10 -=5 → 5

*= Multiplicación abreviada 5 *=2 → 10

/= División abreviada 10 /=3 → 3.33

//= División entera abreviada 10 //= 3 → 3

%= Resto abreviado 10 %= 3 → 1 || 10 %= 4 → 2

OM
Operadores de texto

Símbolo(s) Nombre Ejemplo

*
.C
Concatenación

Repetición
‘Hola, ‘ + ‘Juan.’ → ‘Hola Juan.’

‘ja’*3 → ‘jajaja’
DD
[k] o [-k] Selección de carácter ‘Hola’[0] → ‘H’

[i:j:p] Selección de texto ‘Hola’[0:2] → ‘Hol’

+= Concatenación abreviada ‘Hola’ += ' y chau.' → ‘Hola y chau.’


LA

*= Repetición abreviada ‘Hola’ *= 2 → ‘HolaHola’

>, <, >=, <=, !=, Comparación de textos 1 > 2 → False


== 400 != 399 → True

len(s) Devuelve la longitud de la len([1, 2, 3, 4]) → 3


FI

secuencia

min(s) Devuelve el mínimo elemento de min([10, 50, 100, 5, 20, -2]) → -2


“s”.


max(s) Devuelve el máximo elemento de max([10, 50, 100, 5, 20, -2]) → 100
“s”.

sorted(s) Devuelve “s” ordenada en forma de sorted([10, 50, 100, 5, 20, -2]) →
lista. [-2, 5, 10, 20, 50, 100]

reversed(s) Devuelve “s” invertida. reversed([10, 50, 100, 5, 20, -5])


[100, 50, 20, 10, 5, -2]

s.count(eleme Devuelve la cantidad de veces que “Hello world!”.count(“o”) → 2

Este archivo fue descargado de https://filadd.com


nto|substring[, aparece el elemento|substring en la
desde[,hasta]]) secuencia “s”.

s.index(eleme Devuelve la posición de la primera “Hello world!”.index(“o”) → 4


nto|substring[, ocurrencia elemento o del
desde[,hasta]]) comienzo de substring en “s”.

Operadores lógicos

Símbolo Nombre Ejemplo

OM
and Conjunción isOver5 and isOdd

or Disyunción isOver2 or isEven

not Negación not isPositive

.C
== Igual 1 == 2/2 → True

!= Distinto 1 != 2 → True

< Menor 1 < 2 → True


DD
<= Menor o igual 2 <= 2 → True

> Mayor 1 > 2 → False

>= Mayor o igual 1 >= 2 → False


LA

in Pertenece 4 in evenNumbers → True

not in No pertenece 3 not in evenNumbers → True


FI

Métodos de una lista

Nombre Descripción Ejemplo




lista.copy() Copia la lista original en una variable distinta. a = [1, 2, 3]


b = a.copy()
print(b) → [1, 2, 3]

lista.append(valor). Agrega el elemento valor al final de “lista”. [1, 2, 3].append(4)


[1, 2, 3, 4]

lista.insert(p, v) Inserta el elemento “v” en la posición “p”. [1, 2, 3, 5].insert(3, 4)


[1, 2, 3, 4, 5]

Este archivo fue descargado de https://filadd.com


lista.remove(valor) Quita de la lista el elemento “valor”. [1, 2, 3, 4, 5].remove(4)
[1, 2, 3, 5]

lista.pop([índice]) Quita de “lista” el elemento de la posición [1, 2, 3, 4, 5].pop()


“índice”. Si no se usa este parámetro, quita el [1, 2, 3, 4]
último elemento. [1, 2, 3, 4, 5].pop(3)
[1, 2, 3, 5]

lista.extend(otraLista) Agrega “otraLista” al final de “lista”. a = [1, 2, 3]


b = [“a”, “b”, “c”]
a.extend(b)
[1, 2, 3, “a”, “b”, “c”]

OM
lista.sort([reverse=Tru Ordena la lista. Si se emplea el parámetro [1, 3, 2].sort() →
e][,key=función]) “reverse”, en orden descendente, si se usa [1, 2, 3]
“key”, con criterio de ordenamiento “función”. [1, 2,
3].sort(reverse=True) →
[3, 2, 1]

lista.reverse()

lista.count(valor) .C Invierte el orden de la lista (el primero pasa a


ser último).

Cuenta la cantidad de apariciones de valor


[1, 2, 3].reverse →
[3, 2, 1]

[1, 0, 1, 1, 0, 1].count(1)
DD
en la lista. →4

lista.index(valor) Devuelve la posición de la primera aparición [“H”, “e”, “l”, “l”,


de valor en la lista. “o”].index(“l”) → 2
LA

Métodos de una cadena (string)

Nombre Descripción Ejemplo

s.capitalize() Devuelve una copia del string ‘hello world’ → ‘Hello world’
FI

con la primera letra en


mayúscula y el resto en
minúscula.

s.center(ancho[,relleno]) String centrado con ese ‘hello world’.center(3, ‘a’) →




relleno a los costados. ‘aaahello worldaaa’

s.find(substring[,from[,to]]) Devuelve la primera posición ‘hello world’.substring(‘e’, ‘r’) →


de comienzo del substring en ‘ello wor’
s.

s.rfind(substring[,from[,to]]) Devuelve la última posición de


comienzo del substring en s.

s.format(args, *) Devuelve s formateada texto = "Bienvenido a mi

Este archivo fue descargado de https://filadd.com


sustituyendo dinámicamente aplicación{0}"
un texto.
print(texto.format(" en
Python"))

Retorna: “Bienvenido a mi
aplicación en Python”

texto = "Bruto: ${bruto} +


IVA: ${iva} = Neto:
${neto}"

OM
print(texto.format(bruto =
100, iva = 21, neto = 121))

Retorna: “Bruto: $100 + IVA:


$21 = Neto: $121”

s.join(iterable) Arma una string uniendo los tup = (‘a’, ’b’, ’c’)
elementos de iterable e print(‘-‘.join(tup))

.C
s.rindex(substring[,from[,to]])
intercalándolos con s.

idem a s.rfind
Retorna: a-b-c
DD
s.ljust(ancho[,relleno]) Justifica hacia la izquierda.

s.rjust(ancho[,relleno]) Justifica hacia la derecha.

s.lower() Devuelve s en minúsculas.


LA

s.upper() Devuelve s en mayúsculas.

s.maketrans(x[,y[,z]]) Asocia en un diccionario los vocales = "aeiou"


correspondientes caracteres numeros = "12345" 12
de las cadenas x e y. texto = "murcielagos"
FI

print(texto.maketrans(vocal
es, numeros))

Retorna:


{97: 49, 111: 52, 117: 53,


101: 50, 105: 51}

s.translate(pares) Devuelve s con los caracteres vocales = "aeiou"


asociados en el diccionario acentos = "áéíóú"
pares reemplazados. texto = "murcielagos"
parejas =
texto.maketrans(vocales,
acentos)

print(texto.translate(parej

Este archivo fue descargado de https://filadd.com


as)

Retorna: múrcíélágós

s.replace(antes,ahora[,cantida Reemplaza el substring de


d]) antes por el de ahora.

s.strip() Elimina los espacios del inicio


y fin del string.

s.lstrip() Elimina los espacios del inicio.

OM
s.rstrip() Elimina los espacios del final.

s.swapcase() Devuelve s con las “Hello World”.swapcase() →


mayúsculas convertidas en “hELLO wORLD”
minúsculas y viceversa.

s.split([separador[,maximaDivi Devuelve una lista cuyos


sion]]) elementos son las partes del

.C texto separadas por


separador. Si se omite
separador toma blancos.
DD
s.rsplit([separador[,maximaDiv ídem a derecha.
ision]])

s.startswith(prefijo[,desde[,ha Devuelve True si s comienza “Hello”.startswith(“He”) →


sta]) con prefijo, si no False. True
LA

s.endswith(sufijo[,desde[,hast Devuelve True si s termina con “Hello”.endswith(“lo”) → True


a]) sufijo, si no False.

s.zfill(ancho) Rellena con ceros a la


izquierda hasta el ancho.
FI

s.title() Devuelve s en minúsculas con “hello guys we eat meat” →


cada palabra inicializada en “Hello Guys We Eat Meat”
mayúsculas.


s.isnumeric() Devuelve True si s es 1.isnumeric() → True


numérico, si no False. “lol”.isnumeric() → False

s.isalnum() Devuelve True si s es “abc123”.isalnum() → True


alfanumérico, si no False. [“a”, 1, “e”].isalnum() → False

s.isalpha() Devuelve True si s es


alfabético, si no False.

s.isdecimal() Devuelve True si s tiene sólo

Este archivo fue descargado de https://filadd.com


dígitos decimales (0-9), si no
False.

s.isdigit() Devuelve True si s tiene sólo 2648248376.isdigit() → True


números (los dígitos
decimales de 0 a 9), si no
False.

s.isprintable() Devuelve True si s es un


carácter imprimible, si no
False.

OM
s.isspace() Devuelve True si s es espacio, “ ”.isspace() → True
si no False. “ a “.isspace() → False

s.istitle() Devuelve True si s es un título, “We jump together” → False


si no False. “We Jump Together” → True

s.isidentifier() Devuelve True si s es un

s.isupper() .C nombre válido de objeto, si no


False.

Devuelve True si s está en “HELLO” → True


DD
mayúsculas, si no False. “HELLo” → False

s.islower() Devuelve True si s está en “hello” → True


minúsculas, si no False. “hellO” → False
LA

Métodos de un diccionario

Nombre Descripción Ejemplo

d.clear() Elimina todos los elementos de d. foo = {“one”: 1, “two”: 2, “three”: 3}


FI

foo.clear() → {}

d.pop(clave) Remueve el par clave, valor del {“Name”: “Tobias”, “Apellido”:


diccionario y devuelve valor. Si la “Alcaraz”}.pop(“Name”) →
clave no está da error. {“Apellido”: “Alcaraz”}


(devuelve “Tobias”)

d.popitem() Remueve y devuelve cualquier par {“Name”: “Tobias”, “Apellido”:


clave, valor. Si d está vacío da “Alcaraz”}.popitem(“Name”) →
error d.copy() devuelve una copia {“Apellido”: “Alcaraz”}
de d en otra región de memoria.
(devuelve {“Name”: “Tobias”})

d.fromkeys(secuencia) Crea el diccionario d, tomando las

Este archivo fue descargado de https://filadd.com


claves de una secuencia
d.get(clave) devuelve el valor
asociado a clave.

d.items() Crea el diccionario d, tomando las


claves de una secuencia
d.get(clave) devuelve el valor
asociado a clave.

d.keys() Devuelve una lista con las claves foo = {


de d. “Nombre”: “Tobias”
“Edad”: 21

OM
“Turno”: “Tarde”
}

foo.keys() →
[“Nombre”, “Edad”, “Turno”]

d.update(b) Agrega los pares clave,valor de b

.C
a d. Si alguna clave existe
actualiza su valor.
DD
Métodos de manejo de archivos

Nombre Descripción Ejemplo

open(nombre[,modo])) No es un método sino una


LA

función; abre un archivo para foo = open(“foo.txt”, “r+”,


leer/editar. El modo hará que encoding = ”'utf_8”)
varíe lo que pueda hacer el
programador:
● r: lectura.
FI

● r+: lectura/escritura.
● w: sobreescritura (crea
el archivo si no existe).
● a: añadir. Escribe al
final del archivo.


Un tercer argumento llamado


encoding determina la
codificación de grabado del
archivo. Dos ejemplos son
utf+8 o ansi.

close() Cierra el archivo y guarda los foo.close()


cambios.

.read() Permite leer una determinada

Este archivo fue descargado de https://filadd.com


cantidad de bytes, si no se
pone nada, lee hasta el final.

.readline() Lee la siguiente línea


(caracteres hasta el próximo
\n).

.readlines() Permite leer varias líneas, si


no se indica nada, lee todas
las que falten.

.write() Permite escribir en el archivo

OM
lo que se envía como
argumento.

.writelines() Permite escribir varias líneas


en un archivo.

.splitlines() No se menciona en el PDF, foo.txt:

.C pero devuelve una lista con


cada línea en el documento
sin los \n al utilizar junto con
.read() (a comparación de
Horacio
Juana
María
DD
bar.py:
utilizar sólamente .readlines(),
el cual te devuelve una lista bar foo = open(“foo.txt”,
con cada línea del documento “r+”)
pero incluye los saltos de línea
en los elementos de la lista). print(foo.readlines())
[“Horacio\n”, “Juana\n”,
LA

“María”]

print(foo.read().splitlin
es())
[“Horacio”, “Juana”,
“María”]
FI

Código/métodos de Pandas


Nombre Descripción Ejemplo

Importa la biblioteca
import pandas as pd
Pandas con el alias pd.

Crea un DataFrame df a
data = {...}
partir del diccionario data data = {
usando labels como

Este archivo fue descargado de https://filadd.com


labels = [...]
índice. 'animal': ['cat', 'cat',
'snake', 'dog', 'dog', 'cat',
df = pd.DataFrame(data, 'snake', 'cat', 'dog', 'dog'],
index = labels) 'age': [2.5, 3, 0.5, None,
df # Esto lo ponemos 5, 2, 4.5, None, 7, 3],
para mostrarlo 'visits': [1, 3, 2, 3, 2, 3,
1, 1, 2, 1],
'priority': ['yes', 'yes',
'no', 'yes', 'no', 'no', 'no',
'yes', 'no', 'no']
}

OM
labels = ['a', 'b', 'c', 'd',
'e', 'f', 'g', 'h', 'i', 'j']

.info() Devuelve información df.info()


sobre el DataFrame
incluidos sus índices y

.describe() .C columnas, valores no


nulos y uso de memoria.

Devuelve una serie con df.describe()


DD
un resumen descriptivo
que incluye el número de
datos, su suma, el
mínimo, el máximo, la
media, la desviación
LA

típica y los cuartiles.

.head(n) Devuelve las primeras n df.head(3)


filas del DataFrame df. En
el caso de no
especificarlo, nos
FI

devuelve las primeras 5.

.iloc[:n] Lo mismo que .head(). df.iloc[:3]

.loc[filas, columnas] Devuelve un DataFrame df.loc[:, ['animal', 'age']]




con los elementos de las


filas de la lista filas y las (Muestra todas las filas, pero sólo las
columnas de la lista columnas “animal” y “age”).
columnas. Si queremos
que muestre todas las df.loc[df.index[[3, 4, 8]], ['animal', 'age']]
columnas podemos
poner : en su lugar. (Muestra las filas 3, 4, y 8, y las
columnas “animal” y “age”.

df.loc['k'] = ['dog', 5.5, 2, 'no']

Este archivo fue descargado de https://filadd.com


df

Crea la fila “k” con los valores en sus


respectivas columnas de “dog”, 5.5, 2,
y “no”.

[[columnas]] Lo mismo que .loc[] df[['animal', 'age']]

(Muestra todas las filas, pero sólo las


columnas “animal” y “age”).

.isnull() Devuelve True si el valor df[df['age'].isnull()]

OM
en la celda es Null, si no,
devuelve False.

df[df[columna] condición] Filtra elementos de la df[df['visits'] > 3]


tabla.
(Muestra las filas cuyo valor en la
columna “visits” sea superior a 3).

.C df[df['age'].isnull()]

Selecciona las filas cuya columna


DD
“age” tenga un valor nulo (null).

df[(df['animal'] == 'cat') & (df['age'] < 3)]

Selecciona las filas cuyas columnas


LA

“animal” tenga el valor “cat” y cuya


columna “edad” sea inferior a 3.

.between(n1, n2) Muestra los elementos df[df['age'].between(2, 4)]


que se encuentren en el
rango [a,b]. Devuelve las filas cuya columna “age”
FI

tiene un valor entre 2 y 4.

.loc[fila, columna] = valor Sobreescribe el valor en df.loc['f', 'age'] = 1.5


una celda.
Sobreescribe la celda en la fila f,


columna “age” para que sea 1.5.

.sum(columna) Suma todos los valores df['visits'].sum()


de la columna
seleccionada. Suma todos los valores en la columna
“visits”.

.groupby(fila) Agrupa las filas según su df.groupby('animal')


tipo de valor.
Agrupa las filas según su animal.

Este archivo fue descargado de https://filadd.com


.mean() Devuelve la media de los df.groupby('animal')['age'].mean()
valores en una columna.
Devuelve el valor medio de los valores
en una columna.

.drop(fila) Recibe el índice de una df = df.drop('k')


fila y la remueve. df

.value_counts() Devuelve cuántas veces df['animal'].value_counts()


se repite un valor en una
columna.

OM
.sort_values(by = Ordena las columnas en df.sort_values(by = ['age', 'visits'],
[columnas], ascending = forma ascendiente o no. ascending = [False, True])
[booleanos por columna])

.map() Transforma los valores df['priority'] = df['priority'].map({'yes':


de la columna entera, le True, 'no': False})
pasamos un diccionario df

.C con elementos del tipo


{valor_viejo: valor_nuevo} En la columna “priority”, reemplaza los
valores “yes” por “True” (string →
bool) y los “no” por “False” (string →
DD
bool).

.replace() Reemplaza todos los df['animal'] =


valores específicos en df['animal'].replace('snake', 'python')
una columna.
df
LA

Reemplaza cada “snake” en la


columna “animal” por “python”.
FI


Este archivo fue descargado de https://filadd.com

También podría gustarte