I 난수의 배열을 가진 배열의 요소를 변경 NumPy와. 나는 0.07의 확률을 기반으로 일부 요소 만 바꾸고 싶다. 현재 나는 모든 요소를 반복하는 for 루프를 사용하여이 작업을 수행하고 있습니다. 이 작업을 수행하는 더 좋은 방법이 있습니까? 문제의 배열이 a
를 호출하면주어진 확률
Q
주어진 확률
1
A
답변
6
, 당신은 내가는이 값을 변경하는 방법을 을 모르는
a[numpy.random.rand(*a.shape) < 0.07]
에 의해 그 값의 0.07의 평균 비율을 선택할 수 있습니다. 두 개를 곱하면됩니다.
a[numpy.random.rand(*a.shape) < 0.07] *= 2.0
2
Sven의 대답은 우아합니다. 그러나, 당신이 첫 번째 표현은 샘플링 방법을 많은 요소를 결정
n = numpy.random.binomial(len(a), 0.07)
a[numpy.random.randint(0, len(a), size=n)] *= 2.0
로 변경하려는 요소를 선택하는 것이 훨씬 빠르다 (N의 (a), 그러나 0.07 평균 0과 렌의 정수이다), 두 번째는 검색하려는 색인의 수를 정확하게 생성합니다. p는 1에 접근
a[numpy.random.rand(len(a)) < p]
가 작아
에 차이를 (. 같은 색인을 여러 번받을 수 있다는 점에 유의)하지만 작은 페이지를 위해, 그것은 10의 인자 또는 수 있습니다 더.관련 문제
- 1. 내 MATLAB 프로그램에 주어진 확률
- 2. 각 변수의 주어진 확률 변수 목록을 선택하십시오.
- 3. 확률
- 4. 확률 최적화
- 5. 재 작성 나는 세 가지 진 확률 변수가 주어진
- 6. 확률 목록 생성
- 7. 이벤트의 확률
- 8. 분할 확률
- 9. Java에서 확률
- 10. 파이썬 : 확률
- 11. 마르코프 엔트로피 확률 요철 때
- 12. 데이터의 확률 얻기
- 13. 16 진수 및 확률
- 14. Matlab의 확률 생성
- 15. 확률 론적 난수인가?
- 16. 확률 기본 사항
- 17. 곡선 (또는 각진) 확률
- 18. R에 로그 확률 플롯?
- 19. 확률 론적 등반가 이해하기
- 20. 확률 론적 유니버설 샘플링
- 21. 시간 초과 확률
- 22. 무작위 알고리즘 확률 극대화
- 23. 확률 분포로 난수 생성
- 24. 확률 밀도 함수
- 25. 초보자를위한 확률 알고리즘
- 26. 계산 포아송 확률 비율
- 27. 확률 분포를 계산합니다.
- 28. Python의 확률 분포 함수
- 29. 근무 중에 소수의 확률
- 30. 트리에서 값의 계산 확률
멋진! 고맙습니다. 난 그냥 다른 임의의 값으로 변경하고 싶었어. 그건 내 for 루프보다 훨씬 낫다. – wot
확률 * p *로 요소를 변경하고 "해당 값의 비율 * p *"를 변경하는 것과는 (개별적으로) 차이가 있음에 유의하십시오. 나는 표시된 코드가 전자를한다고 생각한다. –
@tc 어떻게하면 후자를 성취 할 수 있습니까? – wot