Как сделать так, чтобы sample1 и sample2 выводились не в одну строку, а в один или несколько столбцов?
import numpy as np
n1 = int(130)
n2 = int(143)
mu1 = int(50)
mu2 = int(30)
sigma = float(2.1)
sample1 = sorted(np.random.normal(mu1, sigma, n1))
sample2 = sorted(np.random.normal(mu2, sigma, n2))
print(sample1)
print(sample2)
В таком формате выводяться sample1 и sample2.
Ответы (3 шт):
Автор решения: Valeriy M. Raznomazov
→ Ссылка
import numpy as np
n1 = int(130)
n2 = int(143)
mu1 = int(50)
mu2 = int(30)
sigma = float(2.1)
sample1 = sorted(np.random.normal(mu1, sigma, n1))
sample2 = sorted(np.random.normal(mu2, sigma, n2))
for sample,sample_1 in zip(sample1,sample2):
print(sample, sample_1)
Автор решения: MaxU
→ Ссылка
Решение в стиле Numpy:
sample1 = np.sort(np.random.normal(mu1, sigma, (n1,1)), axis=0)
sample2 = np.sort(np.random.normal(mu2, sigma, (n2,1)), axis=0)
res = np.column_stack((sample1[:min(n1, n2)], sample2[:min(n1, n2)]))
результат (первые 10 строк):
In [37]: print(res[:10])
[[43.46735034 22.72733703]
[45.15690395 24.65679163]
[45.58415546 25.85860853]
[46.64115526 26.02413884]
[46.67391253 26.46552756]
[46.78480502 26.69115347]
[47.21693261 26.73877702]
[47.28414813 26.74048161]
[47.29540367 26.91173377]
[47.36743541 26.94666345]]
Автор решения: Mr. JS
→ Ссылка
Для вашей задачи достаточно использовать стандартную функцию zip:
# ваша часть кода:
import numpy as np
n1 = int(130)
n2 = int(143)
mu1 = int(50)
mu2 = int(30)
sigma = float(2.1)
sample1 = sorted(np.random.normal(mu1, sigma, n1))
sample2 = sorted(np.random.normal(mu2, sigma, n2))
# пример использования:
for s1, s2 in zip(sample1, sample2):
print(f'{s1}\t{s2}')
# результат:
45.06734281105727 23.96501901685375
45.30393125127093 24.694986587029383
45.40056422359471 24.920269470762385
45.810454865496375 25.19875696542393
...
