0
Помогите решить задачу цены на жилье Python
Мой код import numpy as np data = np.array([150000, 125000, 320000, 540000, 200000, 120000, 160000, 230000, 280000, 290000, 300000, 500000, 420000, 100000, 150000, 280000]) x = (sum(data)/ len(data)) for n in data: if n >= x: print((n/len(data))*100)
11 Antworten
+ 3
делай это так
c = 0
for n in data:
if (n > stat-res_mean and n< stat+res_mean):
c += 1
print(c/len(data)*100)
+ 1
где ваше одно стандартное отклонение от среднего?
Цена дома должна быть между std-mean и std+mean.
+ 1
import numpy as np
data = np.array([150000, 125000, 320000, 540000, 200000, 120000, 160000, 230000, 280000, 290000, 300000, 500000, 420000, 100000, 150000, 280000])
stat=np.std(data)
res_mean=np.mean(data)
for n in data:
if (n >= stat-res_mean and n<=stat+res_mean):
print((n/len(data))*100
Не идёт запрос.
+ 1
Сейчас вы вычисляете одно стандартное отклонение среднего для каждого дома отдельно. Но вы должны рассчитать эту сумму для всех домов, которые имеют одно стандартное отклонение от среднего значения.
Для этого вы можете использовать другую переменную для подсчета домов и использовать ее для окончательного расчета.
+ 1
import numpy as np
data = np.array([150000, 125000, 320000, 540000, 200000, 120000, 160000, 230000, 280000, 290000, 300000, 500000, 420000, 100000, 150000, 280000])
stat=np.std(data)
res_mean=np.mean(data)
z=0
for n in data:
if (n >res_mean-stat and n<stat+res_mean):
z+=1
print(z/len(data)*100)
Ругается на 10 строку z+=1
+ 1
z += 1 принадлежит предложению if не для цикла
for():
if():
z += 1
print()
+ 1
Если честно я не шарю по статистике и не имею понятия что такое стандартное отклонение и т.д. я посмотрел здесь на коды и начал анализировать с вопросом и ушло где-то час и я нашел ответ:(я тут скопировал и чуть изменил):
0
import numpy as np
data = np.array([150000, 125000, 320000, 540000, 200000, 120000, 160000, 230000, 280000, 290000, 300000, 500000, 420000, 100000, 150000, 280000])
stat=np.std(data)
res_mean=np.mean(data)
for n in data:
if (n >= stat-res_mean and n<=stat+res_mean):
a=((len(n)/len(data))*100)
print(a)
0
Все равно ошибка (
0
import numpy as np
data = np.array([150000, 125000, 320000, 540000, 200000, 120000, 160000, 230000, 280000, 290000, 300000, 500000, 420000, 100000, 150000, 280000])
stat=np.std(data)
res_mean=np.mean(data)
for n in data:
//// if (n >= res_mean-stat and n<=res_mean+stat):
a=((len(n)/len(data))*100)
print(a)
0
Где я исправил я пометил 4 слэшом перед строкой