Como criar um dataframe pandas com dados aleatórios
Você pode usar a seguinte sintaxe básica para criar um DataFrame do pandas preenchido com números inteiros aleatórios:
df = pd. DataFrame ( np.random.randint ( 0,100 ,size=( 10,3 )) , columns=list( ' ABC '))
Este exemplo específico cria um DataFrame com 10 linhas e 3 colunas onde cada valor no DataFrame é um número inteiro aleatório entre 0 e 100 .
Os exemplos a seguir mostram como usar essa sintaxe na prática.
Exemplo 1: Crie um DataFrame Pandas com dados aleatórios
O código a seguir mostra como criar um DataFrame do pandas com 10 linhas e 3 colunas onde cada valor no DataFrame é um número inteiro aleatório entre 0 e 100:
import pandas as pd import numpy as np #createDataFrame df = pd. DataFrame ( np.random.randint ( 0,100 ,size=( 10,3 )), columns=list( ' ABC ') ) #view DataFrame print (df) ABC 0 72 70 27 1 87 85 7 2 4 42 84 3 85 87 63 4 79 72 30 5 96 99 79 6 26 47 90 7 35 69 56 8 42 47 0 9 97 4 59
Observe que cada vez que você executar esse código, os números inteiros aleatórios no DataFrame serão diferentes.
Se você deseja criar um exemplo reproduzível onde os números inteiros aleatórios são sempre iguais, você pode usar o seguinte trecho de código imediatamente antes de criar o DataFrame:
n.p. random . seed ( 0 )
Agora, toda vez que você executar o código, os números inteiros aleatórios no DataFrame serão os mesmos.
Exemplo 2: Adicionar uma coluna de dados aleatórios a um DataFrame existente
Vamos supor que temos o seguinte DataFrame do pandas existente:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' points ': [18, 22, 19, 14, 14, 11, 20, 28], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame print (df) team points assists rebounds 0 A 18 5 11 1 B 22 7 8 2 C 19 7 10 3 D 14 9 6 4 E 14 12 6 5 F 11 9 5 6 G 20 9 9 7:28 4 12
Podemos usar o seguinte código para adicionar uma nova coluna chamada “rand” que contém números inteiros aleatórios entre 0 e 100:
import numpy as np #add 'rand' column that contains 8 random integers between 0 and 100 df[' rand '] = np. random . randint ( 0,100 , size = ( 8,1 )) #view updated DataFrame print (df) team points assists rebounds rand 0 A 18 5 11 47 1 B 22 7 8 64 2 C 19 7 10 82 3 D 14 9 6 99 4 E 14 12 6 88 5 F 11 9 5 49 6 G 20 9 9 29 7:28 4 12 19
Observe que a nova coluna “rand” foi adicionada ao DataFrame existente.
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras operações comuns em pandas:
Como imputar valores ausentes em pandas
Como substituir valores NaN por zero no Pandas
Como verificar se a célula está vazia no Pandas