2013-07-28 2 views
2

안녕하세요 파이썬에서 MATLAB 코드를 변환하려고하지만 난 파이썬으로 변환 할 때 그것은 길이의 잘못을 matlab에 코드matlab에 매트릭스 대 파이썬 arange에

a=N_bits/4+1; 
T=20e-3; 
Fc=8/T 
dt=1/8/Fc; 
t=dt:dt:a*T; 
length(t) 

출력 제공 :

1664 

파이썬 코드를

N_bits=1e2 
a=int((N_bits/4)+1) 
T=20e-3 
Fc=8/T 
dt=(1/8)/Fc 
t=arange(dt,(a*T),dt) 
print(len(t)) 

출력 :

1663 
+1

'Fc'의 값은 무엇입니까? – falsetru

+0

오, 죄송합니다. Fc = 8/T –

답변

2

arange의 중지 (두 번째 인수)는 출력에서 ​​제외됩니다. arange에의 참조 문에 따르면

>>> arange(0, 10, 2) 
array([0, 2, 4, 6, 8]) 
>>> len(_) 
5 

:

arange에

값 내에서 생성되는 ...

([단계, DTYPE = 없음 멈출 [시작]) 반 개방 간격 [start, stop)

동일한 결과를 얻으려면 위트 h matlab, 조정 중지 (두 번째 인수) :

arange(dt, (a*T)+dt, dt) 
+0

고맙습니다. –

+0

신께 축복 해주세요. –

+0

@marriamnayyer, 답장과 upvote를 수령 해 주신 데 감사드립니다. ;) – falsetru