Reputation: 21
Hello I am trying to write a code for Benford distribution, but I got this errror:
def leading_digit(n):
while n >= 10:
n = n//10
return n
def Ben(k):
results = []
for i in range(k):
random_number[i] = np.random.randint(10000)
results.append(leading_digit(random_number[i]))
return results
Ben(2)
Error message:
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-27-5811e9105b42> in <module>
----> 1 Ben(2)
<ipython-input-26-5df31a0e6a56> in Ben(k)
2 results = []
3 for i in range(k):
----> 4 random_number[i] = np.random.randint(10000)
5 results.append(leading_digit(random_number[i]))
6 return results
NameError: name 'random_number' is not defined
Upvotes: 1
Views: 74
Reputation: 2318
You should initialize random_number
list (random_number = [0] * k
) with some value since it reports the variable random_number
not defined error.
def leading_digit(n):
while n >= 10:
n = n//10
return n
def Ben(k):
results = []
random_number = [0] * k
for i in range(k):
random_number[i] = np.random.randint(10000)
results.append(leading_digit(random_number[i]))
return results
Ben(2)
Upvotes: 1