#python #numpy #statistics
Вопрос:
Я хочу объединить два отдельных случайных набора данных Гаусса, один со своим собственным средним значением и std, а другой с более высоким средним значением и std. Мой код, который у меня есть, таков:
import random
import numpy as np
import numpy.random as ra
from numpy.random import seed
#This makes the random numbers generated not change when rerunning the code
np.random.seed(0)
#Creating two Gaussian sets, one with mean 0 and std 1, the second is outlier with mean 3 and std 1
#Each set contains 1,000 trials, first set contains 99 points while outlier set contains 1 point for each trial (for 1% outlier)
data = np.random.normal(loc=0, scale=1, size=(1000, 99))
dataoutlier = np.random.normal(loc=3, scale=1, size=(1000, 1))
Теперь, как я могу объединить это, чтобы числа выбросов совпадали с первым набором для каждого испытания? Я думал, что использование np.union1d сработает, но это объединяет все испытания в один гигантский массив. Любая помощь будет очень признательна!
Ответ №1:
Чтобы объединить два массива numpy по столбцам, вы можете использовать метод добавления.
np.append(data, dataoutlier, axis=1)
Комментарии:
1. что-то мне подсказывает, что они хотят рандомизировать размещение выбросов