
Estoy luchando por encontrar algunas respuestas en línea a esta pregunta. Tengo un conjunto de datos que quiero contaminar intencionalmente. Estoy siguiendo las reglas de la asociación minera y quiero realizar algunas pruebas. Lo ideal sería seleccionar aleatoriamente el x% de las celdas y reemplazarlas con "nulo" o espacio vacío. ¿Alguien tiene alguna recomendación sobre cómo se podría hacer esto?
Gracias
Respuesta1
Sólo usa Python...
Si es un archivo xls 'antiguo', utiliceXLRDyxxl
Si es un archivo xlsx 'nuevo', useopenpyxl
Ejemplo usando openpyxl
30 células aleatorias eliminadas
import openpyxl as xl
import random
wb = xl.open("Book1.xlsx")
ws = wb.worksheets[0]
for n in range(30):
r = random.randint(1,ws.max_row) # Note row indexes start at 1
c = random.randint(0,ws.max_column-1) # Note column indexes start at 0
ws[r][c].value=None
wb.save("Book1b.xlsx")