我试图从 TestDome 回答这个 question 并得到 250877.19298245612 而不是建议的 250000。请告诉我出了什么问题。谢谢
import numpy as np
from sklearn import linear_model
class MarketingCosts:
# param marketing_expenditure list. Expenditure for each previous campaign.
# param units_sold list. The number of units sold for each previous campaign.
# param desired_units_sold int. Target number of units to sell in the new campaign.
# returns float. Required amount of money to be invested.
@staticmethod
def desired_marketing_expenditure(marketing_expenditure, units_sold, desired_units_sold):
X = [[i] for i in units_sold]
reg = linear_model.LinearRegression()
reg.fit(X, marketing_expenditure)
return float(reg.predict(desired_units_sold))
#For example, with the parameters below the function should return 250000.0.
print(MarketingCosts.desired_marketing_expenditure(
[300000, 200000, 400000, 300000, 100000],
[60000, 50000, 90000, 80000, 30000],
60000))
最佳答案
我认为这是解决方案,因为我们搜索从 y 预测 X,并且这个问题中的标签是units_sold。
import numpy as np
from sklearn import linear_model
class MarketingCosts:
# param marketing_expenditure list. Expenditure for each previous campaign.
# param units_sold list. The number of units sold for each previous campaign.
# param desired_units_sold int. Target number of units to sell in the new campaign.
# returns float. Required amount of money to be invested.
@staticmethod
def desired_marketing_expenditure(marketing_expenditure, units_sold, desired_units_sold):
marketing_expenditure = marketing_expenditure.reshape(-1, 1)
units_sold = units_sold.reshape(-1, 1)
reg = linear_model.LinearRegression()
reg.fit(marketing_expenditure , units_sold)
return (desired_units_sold - reg.intercept_)/reg.coef_
#For example, with the parameters below the function should return 250000.0.
print(MarketingCosts.desired_marketing_expenditure(
[300000, 200000, 400000, 300000, 100000],
[60000, 50000, 90000, 80000, 30000],
60000))
关于python - TestDome 数据科学 : Not getting correct answer,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51106254/