Utilizando a biblioteca Numpy
Publicado por João Carlos abreu Junior (última atualização em 14/09/2009)
[ Hits: 10.749 ]
Esse script demonstra como utilizar a biblioteca Numpy de forma eficiente para se trabalhar com vetores e matrizes numéricas.
# -*- coding: utf-8 -*- from random import random import numpy def ordenacao(dados): valor1 = dados[:,:,2]#Valor1 recebe todos os valores de dados[y,x,2] valor1 = valor1.reshape(6000*6000)#Transformando valor1 em um vetor de tamanho 6000*6000 valor2 = dados[:,:,3]#Valor2 recebe todos os valores de dados[y,x,3] valor2 = valor2.reshape(6000*6000)#Transformando valor2 em um vetor de tamanho 6000*6000 indice = numpy.lexsort((valor2,valor1)) # Ordenando de acordo com valor1 e valor2 return indice dados = numpy.arange(6000 * 6000 * 4)#Alocação da Memória dados = dados.reshape((6000,6000,4))# Transforma a memória alocada em uma Matriz 6000X6000, #onde cada posição guarda 4 números #preencimento da memória for y in xrange(0,6000): for x in xrange(0,6000): dados[y,x,0] = y dados[y,x,1] = x dados[y,x,2] = -int(random()*100)#gerando números inteiros negativos. Coloquei o número negativo #pois ordenar números inteiros na forma decrescente é o mesmo que ordenar esses mesmo números # com sinal trocado na forma crescente dados[y,x,3] = int(random()*100)#gerando números inteiros. print dados indice = ordenacao(dados) dados = dados.reshape((6000 * 6000,4))#Transformando dados em um vetor de tamanho 6000*6000 #impressão ordenada for linha in xrange(0,6000*6000): print dados[indice[linha],0],dados[indice[linha],1],dados[indice[linha],2],dados[indice[linha],3]
Dicionário Ingles de expressões.
Nenhum coment�rio foi encontrado.
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Como unir duas coleções de ROMs preservando as versões traduzidas (sem duplicatas)
Como instalar o Telegram Desktop no Ubuntu 24.04
Overclocking Permanente para Drastic no Miyoo Mini Plus
Problemas de chaves (/usr/share/keyrings) no Debian
Converter os repositórios Debian para o novo formato com as chaves
Isso acontece com vcs também? (1)
Problema com audio apos upgrade (9)
Instalação automatizada do Debian 12 em UEFI (2)