diff --git a/__pycache__/datas.cpython-39.pyc b/__pycache__/datas.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5fad9c134a7a7574e81b9b9454dbaa678d849ba6 Binary files /dev/null and b/__pycache__/datas.cpython-39.pyc differ diff --git a/datas.py b/datas.py new file mode 100644 index 0000000000000000000000000000000000000000..03dca15f01bb5d1df0443377e1f5877258dd385d --- /dev/null +++ b/datas.py @@ -0,0 +1,153 @@ +datas=[ + + # 模拟的吕梁第一类房子 + { + "city": "吕梁", + "area": 100, + "rooms": 2, + "school": 1, + "style": 1, + "price": 8000, + }, + { + "city": "吕梁", + "area": 100, + "rooms": 2, + "school": 1, + "style": 1, + "price": 7800, + }, + { + "city": "吕梁", + "area": 100, + "rooms": 2, + "school": 1, + "style": 1, + "price": 8200, + }, + # 模拟的吕梁第二类房子 + { + "city": "吕梁", + "area": 130, + "rooms": 3, + "school": 1, + "style": 1, + "price": 8500, + }, + { + "city": "吕梁", + "area": 135, + "rooms": 3, + "school": 1, + "style": 1, + "price": 8300, + }, + { + "city": "吕梁", + "area": 140, + "rooms": 3, + "school": 1, + "style": 1, + "price": 8600, + }, + # 模拟的吕梁第三类房子 + { + "city": "吕梁", + "area": 130, + "rooms": 3, + "school": 2, + "style": 2, + "price": 6500, + }, + { + "city": "吕梁", + "area": 135, + "rooms": 3, + "school": 2, + "style": 2, + "price": 6300, + }, + { + "city": "吕梁", + "area": 140, + "rooms": 3, + "school": 2, + "style": 2, + "price": 5600, + }, + # 模拟的太原第一类房子 + { + "city": "太原", + "area": 100, + "rooms": 2, + "school": 1, + "style": 1, + "price": 10000, + }, + { + "city": "太原", + "area": 100, + "rooms": 2, + "school": 1, + "style": 1, + "price": 9800, + }, + { + "city": "太原", + "area": 100, + "rooms": 2, + "school": 1, + "style": 1, + "price": 9200, + }, + # 模拟的太原第二类房子 + { + "city": "太原", + "area": 130, + "rooms": 3, + "school": 1, + "style": 1, + "price": 10500, + }, + { + "city": "太原", + "area": 135, + "rooms": 3, + "school": 1, + "style": 1, + "price": 10300, + }, + { + "city": "太原", + "area": 140, + "rooms": 3, + "school": 1, + "style": 1, + "price": 10600, + }, + # 模拟的太原第三类房子 + { + "city": "太原", + "area": 130, + "rooms": 3, + "school": 2, + "style": 2, + "price": 8500, + }, + { + "city": "太原", + "area": 135, + "rooms": 3, + "school": 2, + "style": 2, + "price": 8300, + }, + { + "city": "太原", + "area": 140, + "rooms": 3, + "school": 2, + "style": 2, + "price": 8600, + }, +] \ No newline at end of file diff --git a/predict.py b/predict.py new file mode 100644 index 0000000000000000000000000000000000000000..bcaa76875e39157c1505111ca5e67864cc055bae --- /dev/null +++ b/predict.py @@ -0,0 +1,26 @@ +import numpy as np +from datas import datas +X=[] +Y=[] +cityMark={"吕梁":1,"太原":2} +for item in datas: + single=[] + # 城市 + single.append(cityMark[item["city"]]) + # 面积 + single.append(item["area"]) + # 学区房 + single.append(item["school"]) + # 装修 + single.append(item["style"]) + +X.append(single) +Y.append(item["price"]) + +X=np.array(X) +Y=np.array(Y) + +theta=np.linalg.pinv(X.T.dot(X)).dot(X.T).dot(Y) + +print(theta.dot(np.array([2,100,2,2]))) +